Difference between revisions of "MonoBURG"
From LRDE
(→Git Repository: Update the URL of the Git repository.) |
|||
(3 intermediate revisions by 2 users not shown) | |||
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, |
+ | 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, |
+ | 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, |
|
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 |
|
by several people from LRDE for the needs of the Tiger project. |
by several people from LRDE for the needs of the Tiger project. |
||
Line 36: | Line 36: | ||
== Git Repository == |
== Git Repository == |
||
− | * The Git repository is located at |
+ | * The Git repository is located at https://gitlab.lrde.epita.fr/tiger/monoburg.git. |
− | * You can browse it online via [ |
+ | * You can browse it online via [https://gitlab.lrde.epita.fr/tiger/monoburg Gitlab]. |
== Related links == |
== Related links == |
||
Line 46: | Line 46: | ||
== Contact == |
== Contact == |
||
− | Send any questions or comments to projects@lrde. |
+ | Send any questions or comments to projects⁠@⁠lrde⁠.⁠epita.⁠fr. |
− | |||
− | |||
− | -- %roland% - 10 Aug 2013 |
Latest revision as of 11:32, 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
- The Git repository is located at https://gitlab.lrde.epita.fr/tiger/monoburg.git.
- You can browse it online via Gitlab.
Related links
- The Mono Project,
- The original paper on Burg: Burg - Fast Optimal Instruction Selection and Tree Parsing.
Contact
Send any questions or comments to projects@lrde.epita.fr.