Sunday, March 1, 2009

A Programming Language for the Rest of Us



Skipper-dee-dee, I was never too sure of this here Linux open-source environment until this character in Germany, Mathias Kettner, comes up with a new programming language for Linux called "Wirbel." Faster than Python he says. "Does not support self inspection out of the box," he says. Oh well, I can't parse my own code at runtime without a cup of French roast. Be bright, feel right, try Wirbel.

3 comments:

Ruth said...

I agree that Wirbel "makes a very interesting language" and "can detect many programming errors" but I don't agree that "it cannot support you . . ."

This still tickles me.

Loring Wirbel said...

Wayne T., a friend of mine who develops scripting language, had a REAL critique:

I've seen it (it showed up on Freshmeat like a month ago iirc but at a different home/mirror). It's not a programming language, it's a compiled scripting language, which in and of itself is a unique and quaintly old-school aspect. The ability to compile to straightforward C callability is cool. The Scheme-y-ness of it and presence of numeric sets as a native type would suggest natural adaptation to mathematical and certain non-mission-critical but real-time spatial engineering plugin framework (e.g., avionics test framework) applications. I could work around lack of runtime type identification if structures (which they actually use tuples to bring about) are solid. It's a bit marginal for me because of:

-- Call me spoiled anymore, but lack of associative arrays (hashes) in an interpreted language somehow has me hitting a wall about 50 yards before I'm doing anything truly useful with it. Wirbel dicts are somewhat different (and to *their* credit, fairly unique--Scheme has a similar feature). I didn't see where you could really iterate dicts cleanly, for example, like you would hashes.

-- Lack of Java integration...that's probably something that can be addressed with a user contribution, given how simple (and brand new) this is, it has to be able to be invoked in the BSF (Bean Scripting Framework) with a thin layer. Notably, Perl lacks this and apparently intrinsically can't fit in the BSF. Anyways, maybe somebody will solve this coming from the "other" direction JRE-wise and invent "Jirbel".

-- Built-in string functions are draconian. IIRC, there's no way, for example, to easily extract a substring from a string constant or typed variable. Again, more time out there may solve his.

It's interesting...there are a lot of limitations that clearly have the intent be adaptation to runtime C, *not* C++, otherwise some limitations here would be trivial to have addressed.

You asked. Congratulations.


OK, Wayne, whatever you just said!

Loring Wirbel said...

One friend of Wayne's said, "Let's just call it Dead C." The joke is that we're all fans of a New Zealand improvisational band, Dead C, whose last work was called, "Relax, Fallujah, Hell Has Come," and whose first work was called "Harsh 70s Reality."

Dead C/Wirbel was made for Harsh Naughties Reality.