Fascinating! Seems to have some commonality with dependency injection, which is one of my interests (https://github.com/akkartik/mu#readme)
Can you point me at any Lua docs where I can read more about overriding IO in Lua?
Can you point me at any Lua docs where I can read more about overriding IO in Lua?
So when one uses Lua, it is up to the user to supply IO. This threading through the needle or hour-glass allows the users (embedder) to define how the scripts interact with the base system. This makes them more resilient over time, the interactions are better specified and highly mediated.
Somewhat analogous to the library vs framework dichotomy. Libraries survive better than frameworks do.