diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2014-10-10 15:04:14 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2014-10-10 15:08:19 -0700 |
commit | 630e93635c1fe2f0c2bde7823ddeb49fb48f6872 (patch) | |
tree | 9b2654e95e86072150986c137da6e2189c006518 /edit.arc.t | |
parent | 99ff20c8881af6407255129b0e4b83628c9da11f (diff) | |
download | mu-630e93635c1fe2f0c2bde7823ddeb49fb48f6872.tar.gz |
123 - experiment: build the reading flow around the *test* file
Diffstat (limited to 'edit.arc.t')
-rw-r--r-- | edit.arc.t | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/edit.arc.t b/edit.arc.t index 6272699b..3986cbfc 100644 --- a/edit.arc.t +++ b/edit.arc.t @@ -1,5 +1,30 @@ (load "mu.arc") +(on-init + (= types* (obj + ; Each type must be scalar or array, sum or product or primitive + location (obj size 1) + integer (obj size 1) + boolean (obj size 1) + boolean-address (obj size 1 address t) + byte (obj size 1) +;? string (obj array t elem 'byte) ; inspired by Go + character (obj size 1) ; int32 like a Go rune + character-address (obj size 1 address t elem 'character) + string (obj size 1) ; temporary hack + ; arrays consist of an integer length followed by the right number of elems + integer-array (obj array t elem 'integer) + integer-address (obj size 1 address t elem 'integer) ; pointer to int + ; records consist of a series of elems, corresponding to a list of types + integer-boolean-pair (obj size 2 record t elems '(integer boolean)) + ; editor + line (obj array t elem 'character) + line-address (obj size 1 address t elem 'line) + line-address-address (obj size 1 address t elem 'line-address) + screen (obj array t elem 'line-address) + screen-address (obj size 1 address t elem 'screen) + ))) + (reset) (new-trace "new-screen") ;? (set dump-trace*) |