diff options
-rw-r--r-- | apps/mu.subx | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/apps/mu.subx b/apps/mu.subx index 115656f7..32c9e452 100644 --- a/apps/mu.subx +++ b/apps/mu.subx @@ -78,13 +78,7 @@ # # Still todo: # global variables -# heap allocations (planned name: 'handle') -# user-defined types: 'type' for structs, 'choice' for unions -# short-lived 'address' type for efficiently writing inside nested structs -# -# We don't have 'handle' types yet, but we try to distinguish 'ref', 'handle' -# and 'address' in comments. Their definitions are in layer 50, but really you -# can ignore the distinctions on a first reading of this program. +# union types # # Formal types: # A program is a linked list of functions @@ -168,15 +162,14 @@ # # out1, out2, out3, ... <- name inout1, inout2, inout3, ... # => -# (subx-name inout1 inout2 inout3) +# (name inout1 inout2 inout3) # # Formal types: # functions: linked list of info # name: (handle array byte) # inouts: linked list of vars # outputs: linked list of vars -# body: block (singleton linked list) -# subx-name: (handle array byte) +# body: block (linked list of statements) # == Translating a single primitive instruction # A second crucial piece of the puzzle is how Mu converts fairly regular |