MBase: meta-programming framework
Meta Alternative's products are being developed with the help of MBase - a unique meta-programming framework for rapid compiler development, which has been created within the company.
Up until now no usable, efficient, self-bootstrapping meta-programming language has been available for .NET. MBase closes this gap: an easily embeddable compact framework provides a pragmatically balanced set of features required for rapid compilers and interpreters implementation.
MBase is more than just another programming language, it is the only .NET-centric language building tool that has all the special features required for compilers design:
- natural abstract syntax trees support;
- efficient AST visitors' DSL;
- advanced pattern matching;
- embedded Prolog;
- various .NET type system oriented tools;
- easy to use lexing and parsing DSLs;
- trendy PEG/Packrat implementation;
- automatic generation of syntax highlighting and pretty-printing for every user-defined language;
- various target languages with different semantics
Below you can download a technology preview release of MBase, version 0.6.
Copying
MBase v 0.6 [Technology Preview] © 2009 Meta Alternative Ltd.MBase technology preview comes with ABSOLUTELY NO WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Permission to use and redistribute the unmodified binary files for any purpose without fee is hereby granted, provided that this copyright notice will appear in all copies.
- Tutorial: a gentle introduction into DSL implementation techniques.
- MBase Technology Preview 0.6,
generic distribution (.NET 2.0/3.x, Mono 1.2.6 or higher) - MBase Reference Manual (0.6).
- An example: Minim language compiler implementation.
- Arc compiler: Arc-like language compiler implemented in MBase.
Please send your feedback to info@meta-alternative.net.