Home   Archive   Permalink

New development using Meta programming language

The thread "What I am using now instead of Rebol" was getting rather long even though it is rather inspiring.
I mainly use Meta now. I like being active in the early stages of promising Rebol spin-offs, mainly for the challenges of achieving results that need some work around.
I took the piglatin CGI script from the long thread here and combined the efforts of Nick and Kaj and expanded them to be usable with a form that uses POST instead of GET and created a fully Meta CGI form to handle the piglatin translation of a short text.
You can find it on my personal website:
I also managed to connect Meta to the MySQL (MariaDB) database, and as a proof of concept I made a page counter using Meta

posted by:   Arnold     15-Apr-2023/16:27:04-7:00

Excellent work, Arnold! I'm very happy with your collaboration. You have just the right attitude to get started with Meta.

posted by:   Kaj     16-Apr-2023/9:44:45-7:00

It's great to see the MySQL implementation!

posted by:   Nick     17-Apr-2023/14:15:50-7:00

It is basically using the Meta RUN method calling the command-line interface of mysql and using the -e to send the query to execute. The credentials are read from a file that is in an unreachable location from the website. And the statement you pass to RUN includes creating an output file that you process afterward and finally delete. It is all really simple after figuring out that takes almost forever.
Also when combined with an XMLHttpRequest that is handled ONLOAD it is possible to make use of you scripts while keeping your URL away from cgi-bin folder.
So some more will follow.

posted by:   Arnold     17-Apr-2023/17:26:47-7:00

Calling the MySQL executable for every request works for single user apps, but I expect there would be concurrency issues, or at least that would introduce a lot of overhead for a busy multi-user production implementation. Still, it's great to see interest and progress being made on the Rebol values!

posted by:   Nick     27-Apr-2023/6:20:08-7:00

Concurrency is managed by the database server. Of course, programming the client this way is very inefficient, but so are common techniques such as HTTP, CGI, REBOL and Python. For most applications, it is of no concern.
More efficient ways are often also more complex. Meta will gradually support more efficient ways, but we start with the simple, universal, low-hanging fruit.

posted by:   Kaj     29-Apr-2023/6:27:03-7:00



Type the reverse of this captcha text: "e n i l n e"