Skip to: Site menu | Main content

Metacircular Research Platform

Home Add comment to Wiki View in Wiki Edit Wiki page Printable Version

Welcome to the Metacircular Research Platform (MRP), a new design effort in building performant multipurpose metacircular systems. Metacircularity is a property whereby a system and its run-time are all written in the same programming language. MRP is written in Java, including libraries, compilers and garbage collectors. It uses this metacircular platform to develop runtimes for binary translators and is a basis for operating system research.

Features of MRP include:

  • written in Java - memory safety is a given
  • highly object-oriented design
  • develop programming language runtimes in a modern garbage collected environment (with precise performant garbage collection for free)
  • builds on the popular RVM code base [#1]
  • performance around state-of-the-art, but non-metacircular, runtimes
  • cross platform development, Windows, Linux and OS/X all supported
  • 32 and 64bit Intel support

The purpose of MRP is to provide an alternative to conventional runtimes (such as LLVM and HotSpot) that aren't metacircular and consequently don't practice what they preach in terms of cross-platform portability, or the ease at which they can be adapted as a runtime for other systems.

Explore MRP via the user guide.

News

1. A list of differences between MRP and Jikes RVM is maintained here.