Crafting Interpreters - Retrospective 2018-11-05

By Max Woerner Chase

In this post:


I didn't precisely have a "plan" this week, the point was just to make some more progress on my Lua version of the Crafting Intepreters stuff. I feel like this worked out.

I did that, and writing these posts was a helpful kick in the pants to get past some impediments. There wasn't really a plan beyond that.

I've been reading ahead in Crafting Interpreters, on how the C version works, and it looks to me like, if I'm going to port that to anything, I'm porting it to Rust. This would be a weird changeup, insofar as it replaces "Lua doesn't have more than a basic framework for exceptions, so I rolled my own" with "Well, I'm not writing that code, since it's in the standard library". It might actually be quite a different experience, insofar as I'd have to teach myself about stuff that the book barely touches on, like arenas.

However, before I do any of that, I want to finish up the AST-based interpreter, write up documentation and tests for it, and then start forking it and experimenting with it. I might end up porting it to RPython and trying to optimize it that way.


Next week, I think I should write about something other than coding. Whether that's reading stuff, or writing stuff, I'll work that out later.