5 ms·
Are there any other good tutorials on creating a toy programming language? Something that teaches about lexers, parsers, etc.
by aoe 15y ago
Are there any other good tutorials on creating a toy programming language? Something that teaches about lexers, parsers, etc.
- eterps 15y agoThese are my favorite resources: Compiler Construction: http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf The Elements of Computing Systems: http://amzn.to/GQycqj http://amzn.to/GQycqj MetaCompilers: http://www.bayfronttechnologies.com/mc_tutorial.html http://www.bayfronttechnologies.com/mc_tutorial.html How to Create Your Own Freaking Awesome Programming Language: http://createyourproglang.com/ http://createyourproglang.com/ Bootstrapping a simple compiler from nothing: http://www.rano.org/bcompiler.html http://www.rano.org/bcompiler.html
- fogus 15y agoCorrect me if I'm wrong, but wasn't "How to Create Your Own Freaking Awesome Programming Language" the motivation for CoffeeScript. That alone should be enough motivation for sending your money that way.
- rbxbx 15y agoYou're correct. That's why the first version was written in Ruby :)
- irahul 15y agoTo add to the list, Peter Norwig's lisp interpreter is a short, concise introduction to interpreters. http://norvig.com/lispy.html http://norvig.com/lispy.html http://norvig.com/lispy2.html http://norvig.com/lispy2.html
- zerd 15y agoAnother one I recommend, because it starts with codegen and works its way back: Writing a compiler in Ruby, bottom up: http://www.hokstad.com/compiler http://www.hokstad.com/compiler
- raganwald 15y agoMy (pricey) favourite is Lisp In Small Pieces: http://www.amazon.com/Lisp-Small-Pieces-Christian-Queinnec/dp/0521545668?tag=duckduckgo-d-20 http://www.amazon.com/Lisp-Small-Pieces-Christian-Queinnec/d... Note that Peter Norvig gives it a five-star review. (The affiliate link benefits DuckDuckGo.)
- RodgerTheGreat 15y agoYou must read JonesForth, a literate program which starts from x86 assembly and builds up a complete Forth environment: https://github.com/chengchangwu/jonesforth https://github.com/chengchangwu/jonesforth
- tomp 15y agoCheck out Andrej Bauer's Programming language Zoo for some simple languages implemented in OCaml. Although he focuses more on the implementation/runtime semantics than on syntax. http://andrej.com/plzoo/ http://andrej.com/plzoo/