Just like with `require`, we don't we don't know how to sandbox it.
(Though we still have `require` because standard libraries outside apps
need it. I need to make sure apps can't invoke `require`..)
Still extremely ugly:
- I've inlined all the namespaces under ssl, so you need to know that
context and config are related to ssl.
- luasec comes with its own copy of luasocket. I haven't deduped that
yet.
Until now we had just the bare minimum bindings needed for the demos
built so far. Now we have all of lcurses building in place with minimal
changes.
The changes in this commit can run hanoi.lua when inlined into Lua 5.1,
but don't work with Teliva.
First piece of working new vocabulary:
print(curses:cols())
Just pulling in code from lcurses for the most part. But I'm trying to
understand its internals as I gradually add them in, after my more blunt
first approach of packaging up lcurses/ext failed.
Overall plan for Teliva's API:
- start out with a 'curses' library that does what people who are used
to ncurses/lcurses expect.
- over time create a more opinionated library called 'screen' or
'window' or something.