1. 19

OP Here: I wanted to write a simple text-based interface to track the my groceries.

Early on I decided that I wanted to use Lua to write the program and thus started using LuaJIT amazing ffi to call ncurses functions to display what I wanted on the terminal.

That proven to be incredibly convoluted.

Inspired by this an HN story about emcas [0] and a comment in particular [1] regarding how emcas benefited from a global namespace, and at the same time not being a particular fan of eLisp I set out to make a emacs-lite-lite-lite with just the functionality I needed, say, print text on the screen, print text on the “mode line” and a callback when a key is pressed.

[0] https://emacs.love/tales/emacs-love-tale-by-sdp.html [1] https://news.ycombinator.com/item?id=27521477