Building and Exploring a Toy Language in Elixir

82
clicks
Building and Exploring a Toy Language in Elixir

Source: youtube.com

Type: Video

Lucas Sifoni presented a session at ElixirConf EU 2024 on building a toy language from scratch using Elixir. The language, named OVO, started as a low-code data manipulation UI in TypeScript but transitioned into Elixir for the implementation of a graphical node editor and API endpoints. The talk covered five major steps: tokenizing the input, parsing tokens into an abstract syntax tree, printing the syntax tree back to text, transforming the syntax tree through pattern matching, and finally evaluating the tree with a working interpreter. Sifoni also demonstrated how built-in functions and user-defined functions interact within this language. He shared practical insights and challenges such as error handling and macro systems in Elixir. The presentation concluded with a demo of OVO's ability to create stateful systems, register and invoke runners, and handle multi-user program composition.

© HashMerge 2025