The slides for my part of the course are available here (in French).
The exercises for the practical assignment (in French) can be downloaded here.
In this course I show a simple interpreter for a language of variable assignments. The variables can either be strings or integer numbers. A program in this language may look as follows:
String var1 = "hello world 1 + 2"; int var2 = 1 - (2 + 3); int var3 = 4 + var2;
This archive contains the complete source code of the interpreter as well as several example programs.
To build the project, run the following commands:
jflex arith.flex jacc arith.jacc javac ArithEval.java
The following command runs just the scanner on the first example:
java Yylex examples/example1.duck
The following command runs the interpreter on the first example:
java ArithEval examples/example1.duck