An Interactive Exploration of a Simple Compiler
Pharo is an interactive, reflective development environment in the tradition of Smalltalk. As such, all the code of the IDE and the compiler (source -> bytecode) are implemented in the language itself and thus accessible to the programmer at runtime.
After a quick intro to Pharo, we will interactively explore the Pharo compiler infrastructure, from code, the AST, the semantic analysis up to creating code for execution.
The second part of the tutorial will explore how the compiler ties in with the rest of the system, for example to support the debugger and other tools.
Finally we will explore how programmers can extend the compiler for their own experiments.
Marcus Denker is a permanent researcher at INRIA Lille - Nord Europe. Before, he was a postdoc at the PLEIAD lab/DCC University of Chile and the Software Composition Group, University of Bern. His research focuses on reflection and meta-programming for dynamic languages. He is an active participant in the Squeak and Pharo open source communities for many years. Marcus Denker received a PhD in Computer Science from the University of Bern/Switzerland in 2008 and a Dipl.-Inform. (MSc) from the University of Karlsruhe/Germany in 2004. He co-founded ZWEIDENKER in 2009.