|
Your course looks interesting! I am a fan of the interpreter approach to teaching programming language concepts myself, and have taught two courses with that approach, using PLAI, with one using Racket as implementation language, and the other using the functional parts of Scala. I noticed that this is the first time you are using Lua in this course, may I ask why you picked Lua?
Writing parsers in LPEG is easy, but making the parsers output nice error messages when syntax errors happen can be tricky. I have a student that wrote a set of functions on top of LPEG that help write parsers with basic error reporting, I will ask him to send you a link.