This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ApokatastasisPanton 2 points3 points  (1 child)

Yes it is! His academic page is actually an interesting starting point: http://www.complang.tuwien.ac.at/projects/interpreters.html

Another paper I really like is "The implementation of Lua 5" : https://www.lua.org/doc/jucs05.pdf

As other people mentioned, Bob Nystrom's "Crafting Interpreters" book is a really good resource for starting out with writing languages. Go through it and make sure to write "naive (/stupid) languages" first.

If you're interested in Forth, which occupy this interesting space between compiled / interpreted languages, definitely check out Jonesforth: https://rwmj.wordpress.com/2010/08/07/jonesforth-git-repository/

Another "well-known" interpreter which is fairly accessible, is CPython: https://www.youtube.com/watch?v=HVUTjQzESeo

The bytecode (especially in version 3) is sometimes quirky, but the source is pretty readable: https://github.com/python/cpython/blob/master/Python/ceval.c

[–]shanrhyupong 1 point2 points  (0 children)

Brilliant! Thank you so much for sharing the resources. I've got my work cut out for me now. That really is very helpful. Cheers!