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:
- an efficient optimising compiler;
- an extensible syntax frontend;
- 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 (including low level .NET and LLVM)
Below you can download a public beta release of MBase, version 1.0 beta6.
Copying
MBase v 1.0 beta6 [Public beta] © 2010 Meta Alternative Ltd.MBase public beta 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.
- MBase 1.0 beta 6,
generic distribution (.NET 2.0/3.x, Mono 2.6 or higher) - MBase Reference Manual (1.0 beta6).
- PFront documentation: a new PFront programming language users guide
- Tutorial: a gentle introduction into DSL implementation techniques.
Please send your feedback to info@meta-alternative.net.