Mouton, Youri
[UCL]
Kim Mens
[UCL]
Nicolas Laurent
[UCL]
Popular programming languages are ever growing projects, evolving as new features are implemented and issues are fixed. Some projects even rewrite their compiler when needed, for example the PHP project when they released the seventh version. We try to explore whether and how programming language interpreter development can be achieved in an incremental way to avoid rewrites, critical to making compiler development better. We first analyse and motivate the choice of Truffle and GraalVM as tools for compiler development. We then find a case study that allows us to showcase the incremental nature of our work. We then dive deeper into the details of the implementation of the desired features we discussed in the case study. We illustrate how we tried to write an interpreter for a modern dynamic object-oriented language with metaprogramming features in an incremental fashion. Finally we reflect on the development process and whether the objective of this dissertation has been achieved, including a discussion of the hard challenges and the lessons learned from the point of view of the proposed methodology.
Référence bibliographique |
Mouton, Youri. Incremental compiler development. Ecole polytechnique de Louvain, Université catholique de Louvain, 2019. Prom. : Kim Mens ; Nicolas Laurent. |
Permalien |
http://hdl.handle.net/2078.1/thesis:19373 |