I'm interested in this are (building a toy relational lang with array capabilities) and one are I have not find example is CRUD apps. How exactly a simple todo or invoice work here?
I don't have a crud example off hand, but https://nsl.com/ has a lot of examples - chat server/client, instant messenger, spreadsheet, class tracker, 15-puzzle, calculator, raytracer, pivot tables, and more.
You may like http://nsl.com/k/t.k - a 14 line in-memory, quite efficient, relational-style database (no parser, just the ops).
Note most of nsl is k2/k3 ; the differences aren't huge, but if you dig deep it helps to know which version you're reading.