Wul (pronounced wool) is a toy programming language I’ve been working on as a learning exercise. In my school days, I was asked to implement a very simple tree-walking interpreter using ANTLR to generate the parser. I found this to be one of the more interesting programming assignments. I spent many hours simplifying the EBNF grammar from which the parser was generated. Wul is the language that I began to design after that course.
Read More →
Terrence Parr presented an introduction to virtual machines. He implemented a simple virtual machine and put the code in both Java and C varieties on GitHub: I decided to implement the same virtual machine in one of the worst languages for such a task: Lua. Lua itself uses a virtual machine. Now we have a virtual machine inside another virtual machine. Furtheremore, Lua doesn’t have an integer type or the switch statement.
Read More →
Lua is an underrated programming language. If the task doesn’t require many libraries, it’s my go-to-choice. This is somewhat of an oddity as even most Lua programmers seem to prefer C. But the more you use any tool, the more you realize it has some faults. Lua is, sadly, no exception. First and foremost, there is a massive shortage of libraries and tooling. Lua does not come ‘batteries-included’ like Python or Ruby.
Read More →