Algebraic data types in Lua (almost) | Hacker News Reader