Difference between revisions of "MonoBURG"

From LRDE

(→‎Contact: Obfuscate the e-mail address.)
Line 6: Line 6:
 
[http://www.mono-project.org/ Mono]. It is used as a
 
[http://www.mono-project.org/ Mono]. It is used as a
 
code-generator generator that relies on bottom-up tree parsing;
 
code-generator generator that relies on bottom-up tree parsing;
basically, !MonoBURG generates a tree parser that executes some
+
basically, MonoBURG generates a tree parser that executes some
 
instructions, generally code output, when a defined tree pattern is
 
instructions, generally code output, when a defined tree pattern is
 
matched.
 
matched.
   
In the [[Tiger|Tiger]] project, !MonoBURG is used to generate a code producer
+
In the [[Tiger|Tiger]] project, MonoBURG is used to generate a code producer
 
from the lowest level of representation of the source code to assembly.
 
from the lowest level of representation of the source code to assembly.
   
!MonoBURG has been extended to support namespace use, C++ references,
+
MonoBURG has been extended to support namespace use, C++ references,
 
and to add other facilities.
 
and to add other facilities.
   
Line 19: Line 19:
 
<!-- MONOBURGINTROSTOP -->
 
<!-- MONOBURGINTROSTOP -->
   
!MonoBURG was part of the Mono Project. This version has been extended
+
MonoBURG was part of the Mono Project. This version has been extended
 
by several people from LRDE for the needs of the Tiger project.
 
by several people from LRDE for the needs of the Tiger project.
   

Revision as of 11:31, 4 May 2015

Overview

MonoBURG is a tree-rewriting system originating from Mono. It is used as a code-generator generator that relies on bottom-up tree parsing; basically, MonoBURG generates a tree parser that executes some instructions, generally code output, when a defined tree pattern is matched.

In the Tiger project, MonoBURG is used to generate a code producer from the lowest level of representation of the source code to assembly.

MonoBURG has been extended to support namespace use, C++ references, and to add other facilities.

MonoBURG was part of the Mono Project. This version has been extended by several people from LRDE for the needs of the Tiger project.

Directions

Future main modifications will be:

  • The postponing of output emission to allow not `on-the-fly' modification,
  • Provide different `%' directives,
  • Revamp the scanner.

Downloads

Git Repository

Related links

Contact

Send any questions or comments to projects⁠@⁠lrde⁠.⁠epita.⁠fr.