| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'default-scope' is now 'default-space'
'closure-generator' is now 'next-space-generator'
The connection to high-level syntax for closures is now tenuous, so
we'll call the 'outer scope' the 'next space'.
So, let's try to create a few sentences with all these related ideas:
Names map to addresses offset from a default-space when it's provided.
Spaces can be strung together. The zeroth variable points to the next
space, the one that is accessed when a variable has /space:1.
To map a name to an address in the next space, you need to know what
function generated that space. A corollary is that the space passed in
to a function should always be generated by a single function.
Spaces can be used to construct lexical scopes and objects.
|
| |
|
| |
|
|
|
|
|
| |
We expect users to come across mu from arbitrary bits of code, so try to
make each line as self-contained as possible.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
We have cases where 'type' is stored in memory, so it can't be a
literal type like 'offset'.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
They need a type table to work, but I'm keeping type tables next to
the tests.
Everything needs to be a test from now on.
(But first some fixes to the terminal primitives.)
|
| |
|
|
|
|
|
| |
Why did it take forever to realize nobody will set the array length, that I
have to do it for myself?
|
| |
|
| |
|
|
|