diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-01-02 18:13:04 -0800 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-01-02 18:20:18 -0800 |
commit | d1c12218229989dc9a6e15b0190ae0ca05ecb20f (patch) | |
tree | 639797bac7cd33b315d599edb696309483ee25e0 /edit.mu | |
parent | d99607231dd767df599478bb0bbc68d0a3483d1a (diff) | |
download | mu-d1c12218229989dc9a6e15b0190ae0ca05ecb20f.tar.gz |
497 - strengthen the concept of 'space'
'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.
Diffstat (limited to 'edit.mu')
-rw-r--r-- | edit.mu | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/edit.mu b/edit.mu index 706d5de4..ebf43161 100644 --- a/edit.mu +++ b/edit.mu @@ -1,7 +1,7 @@ ; a screen is an array of pointers to lines, in turn arrays of characters (function new-screen [ - (default-scope:scope-address <- new scope:literal 30:literal) + (default-space:space-address <- new space:literal 30:literal) (nrows:integer <- next-input) (ncols:integer <- next-input) (result:screen-address <- new screen:literal nrows:integer) |