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.