Journal Jack William Bell's Journal: Heavy MetaL
This is an excellent example of the kind of thing a programmer like myself will spend a lot of time on, as a thought experiment, and then never get around to actually doing. Only, in this case, someone did!
MetaL or 'Meta-Language' is an XML-based programming language intended to be translated (via XSLT) into any of several other programming languages. They have done quite a bit of work on this product, even to the point of developing a standard object persistance storage format. All in all it is a pretty impressive effort.
However when you look at the non-trivial example code you see the downside of their particular approach: The MetaL class is substantially larger and more difficult to understand than the generated PHP or Java code. Meaning that you should probably develop in one of those languages in the first place, unless language portability was one of the design goals of your program.
I have been playing with my own version of the same basic idea for some time (as described at the beginning of the post) and I am convinced that the proper way to do this is to use a declarative language for the top level. But that turns into a chicken and egg problem because it requires a very large standard class library in each target language. However you need to define the class library in terms of the meta-language syntax in the first place...
Still, I persist in thinking about it. Perhaps someday (RSN) I will get around to creating something more than a lot of notes on yellow pads...
Heavy MetaL More Login
Heavy MetaL
Slashdot Top Deals