Project info for MetaL - a XML based meta-programming language

Share This Created 4 Nov 2002 at 04:54 UTC by mlemos, last modified 4 Nov 2002 at 05:08 UTC by mlemos.


Freshmeat page:

Notes: MetaL is shorthand for Meta-programming Language. Meta-programming is a method to develop computer programs. It works by generating source code in a target language from a program specification in a higher level language.

MetaL programs source code is based on XML. MetaL compiler engine can be used to generate the same program from MetaL source code to potentially any target language. Currently supported target languages are PHP, Java and Perl. The support for other languages can be added any time.

A sample of MetaL source and generated code in target languages may be found here.

As part of the MetaL compiler project there is now the first MetaL compiler meta-meta-programming module. It is meant to automate the generation of software components that interface with persistent storage by the means of an Object Oriented API.

The goal of this module is to increase the productivity of the software developers by avoiding the tedious task of implementing classes of objects from a software project model that map the objects data in persistent storage.

For medium or large sized projects, the use of MetaL persistence model can increase the productivity of the software developers by more than an order of magnitude, so they can spend more time on the development of the code that implements the project business specific rules.

More details on this persistence module may be found here.

License: BSD

This project has the following developers:

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page