6 ms·
Are there any other good tutorials on creating a toy programming language? Something that teaches about lexers, parsers, etc.
by aoe 14y ago
Are there any other good tutorials on creating a toy programming language? Something that teaches about lexers, parsers, etc.
- eterps 14y 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 14y 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 14y agoYou're correct. That's why the first version was written in Ruby :)
- irahul 14y 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 14y 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 14y 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 14y 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 14y 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/