January 07, 2004

And today's an even better one

After burning the midnight oil (and the Thanksgiving, Christmas, and New Year's oil, and more weekend oil than I'd like to think about) and batting off the flu (twice, dammit! It's not better the second time around) I'm happy to say... it's done!

It, in this case, is the proof-of-concept, first cut porting of the current work-language-from-hell over to something that sucks much less, and has far fewer database limits.

Or, more succinctly, it means I have a working 4GL languag compiler that targets Parrot, with runtime libraries that use NCurses for screen control and PostgreSQL as a back-end database. The compiler's written in Perl 5. The runtime libraries are written in PIR (or IMCC -- basically a higher-level of assembly, one that, ironically, is actually a higher-level language in spots than the 4GL) and the only C involved is Parrot itself.

That last part's actually the most cool bit. Parrot's built-in facilities are sufficient to grant full access to both curses and postgres without needing any extension code in C at all. None. It's sweet. It also means that, when Perl 6 rolls out, a good chunk of the modules on CPAN that have XS components won't need to have them, and you won't have to have a C compiler around to build and install them.

Now I think I'll take a nap for a while...

Posted by Dan at January 7, 2004 05:06 PM | TrackBack (2)
Comments

It's pretty amazing what parrot can do already, even though it's just version 0.0.13. Especially the NCI is really cool. Maybe somebody will come along and write an interface to SDL and port quake to parrot assembly.

Posted by: crzwdjk at January 8, 2004 03:54 AM

I'm not porting Quake, but SDL bindings don't look so difficult. Really, they're harder to write for Perl 5....

Posted by: chromatic at January 8, 2004 02:49 PM

Where is it? I'd like to put it to test...

Posted by: Zab Ert at January 22, 2004 12:13 PM

If you're looking for the SDL bindings, chromatic sent them to me and they're sitting in my inbox somewhere. It's past time to get them checked into the repository...

Posted by: Dan at January 22, 2004 12:42 PM