Teaching material for our Compilers Course (AKT)

It would be nice to teach or at least demo some advanced language engineering tools. You could write a simple tutorial in Estonian about this, but ideally, you should think about how we could teach these tools in one-two weeks of our compiler course.

Creating an IDE for AKTk with Xtext or JetBrains MPS

AKTk is the language we use in our compilers course, during which you wrote a compiler, but a modern programming language obviously requires a great integrated development environment (IDE) with syntax highlighting and all that. As it happens, there are these things called language workbenches that make this really easy. There are two really prominent ones at the moment: Xtext and JetBrains MPS. You should select one and create a tutorial and demo (preferably in Estonian), so that we can use this in our compilers course. The main deliverable would be the demo code and documentation of your experience and potential pitfalls for using this in our courses.

Writing an Interpreter for AKTk in Truffle

During the compiler course, we wrote an interpreter for the AKTk language in a functional style. It would be nice to also demo an interpreter written in a more object-oriented style as a self-evaluating interpreter. In particular, you should try to implement the interpreter in the Truffle framework. Here, you should provide a little bit of background to the Truffle framework and describe and document your implementation.