A ton is missing to turn this into something an end user could grok.

In particular, the defined functions on the top have names instead of being visualized, and they are just in one big list at the moment instead of being organizable by types.

But I learned a lot about some core ideas for how to "attach" a cosmetic operation while being able to dynamically disable those visuals while keeping the compute part the same when composing different programs. And being able to do things I would normally need a keyboard for, like generating lists of rectangles, was pretty cool.

Just like normal programming, at the moment this system is difficult to understand if you're not the one doing it yourself, but I think with some more work that can be fixed.

But being able to take an existing operation and "open" it up to see what it's made of is still a neat ability.