about summary refs log tree commit diff stats
path: root/sandbox/011-errors.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-09-17 13:25:40 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-09-17 13:25:40 -0700
commit3d8b137c879c6f5c01588c2dbbb35bc0ec028909 (patch)
treeb00800b9fb00b422b3eaf5acb02f1667ad62fbc7 /sandbox/011-errors.mu
parenta0331a9b0eab63a000dcd022fe605d124c573b8d (diff)
downloadmu-3d8b137c879c6f5c01588c2dbbb35bc0ec028909.tar.gz
3391 - type abbreviations everywhere
Well, almost. I can't use them in some places in C++ where I'm just
creating a temporary reagent without passing it through transforms. Like
in some unit tests. I can't use them in memory-should-contain.

And there's one remaining bug: I can't use abbreviations in a couple of
places in 075channel.mu.
Diffstat (limited to 'sandbox/011-errors.mu')
-rw-r--r--sandbox/011-errors.mu150
1 files changed, 75 insertions, 75 deletions
diff --git a/sandbox/011-errors.mu b/sandbox/011-errors.mu
index f30eeafc..ccdf0863 100644
--- a/sandbox/011-errors.mu
+++ b/sandbox/011-errors.mu
@@ -6,7 +6,7 @@ container programming-environment-data [
 
 # copy code from recipe editor, persist, load into mu, save any errors
 # test-recipes is a hook for testing
-def! update-recipes env:address:programming-environment-data, screen:address:screen, test-recipes:text -> errors-found?:boolean, env:address:programming-environment-data, screen:address:screen [
+def! update-recipes env:&:programming-environment-data, screen:&:screen, test-recipes:text -> errors-found?:bool, env:&:programming-environment-data, screen:&:screen [
   local-scope
   load-ingredients
   {
@@ -40,7 +40,7 @@ before <render-components-end> [
 ]
 
 container programming-environment-data [
-  error-index:number  # index of first sandbox with an error (or -1 if none)
+  error-index:num  # index of first sandbox with an error (or -1 if none)
 ]
 
 after <programming-environment-initialization> [
@@ -53,8 +53,8 @@ after <run-sandboxes-begin> [
 
 before <run-sandboxes-end> [
   {
-    error-index:number <- get *env, error-index:offset
-    sandboxes-completed-successfully?:boolean <- equal error-index, -1
+    error-index:num <- get *env, error-index:offset
+    sandboxes-completed-successfully?:bool <- equal error-index, -1
     break-if sandboxes-completed-successfully?
     errors-found? <- copy 1/true
   }
@@ -63,8 +63,8 @@ before <run-sandboxes-end> [
 before <render-components-end> [
   {
     break-if recipe-errors
-    error-index:number <- get *env, error-index:offset
-    sandboxes-completed-successfully?:boolean <- equal error-index, -1
+    error-index:num <- get *env, error-index:offset
+    sandboxes-completed-successfully?:bool <- equal error-index, -1
     break-if sandboxes-completed-successfully?
     error-index-text:text <- to-text error-index
     status:text <- interpolate [errors found (_)    ], error-index-text
@@ -76,7 +76,7 @@ container sandbox-data [
   errors:text
 ]
 
-def! update-sandbox sandbox:address:sandbox-data, env:address:programming-environment-data, idx:number -> sandbox:address:sandbox-data, env:address:programming-environment-data [
+def! update-sandbox sandbox:&:sandbox-data, env:&:programming-environment-data, idx:num -> sandbox:&:sandbox-data, env:&:programming-environment-data [
   local-scope
   load-ingredients
   {
@@ -86,22 +86,22 @@ def! update-sandbox sandbox:address:sandbox-data, env:address:programming-enviro
     return
   }
   data:text <- get *sandbox, data:offset
-  response:text, errors:text, fake-screen:address:screen, trace:text, completed?:boolean <- run-sandboxed data
+  response:text, errors:text, fake-screen:&:screen, trace:text, completed?:bool <- run-sandboxed data
   *sandbox <- put *sandbox, response:offset, response
   *sandbox <- put *sandbox, errors:offset, errors
   *sandbox <- put *sandbox, screen:offset, fake-screen
   *sandbox <- put *sandbox, trace:offset, trace
   {
     break-if errors
-    break-if completed?:boolean
+    break-if completed?:bool
     errors <- new [took too long!
 ]
     *sandbox <- put *sandbox, errors:offset, errors
   }
   {
     break-unless errors
-    error-index:number <- get *env, error-index:offset
-    error-not-set?:boolean <- equal error-index, -1
+    error-index:num <- get *env, error-index:offset
+    error-not-set?:bool <- equal error-index, -1
     break-unless error-not-set?
     *env <- put *env, error-index:offset, idx
   }
@@ -129,15 +129,15 @@ scenario run-shows-errors-in-get [
   assume-screen 50/width, 20/height
   1:text <- new [ 
 def foo [
-  get 123:number, foo:offset
+  get 123:num, foo:offset
 ]]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -147,7 +147,7 @@ def foo [
     .foo                                               .
     .foo: unknown element 'foo' in container 'number'  .
     .foo: first ingredient of 'get' should be a contai↩.
-    .ner, but got '123:number'                         .
+    .ner, but got '123:num'                            .
   ]
   screen-should-contain-in-color 1/red, [
     .  errors found                                    .
@@ -160,7 +160,7 @@ scenario run-updates-status-with-first-erroneous-sandbox [
   assume-screen 50/width, 20/height
   1:text <- new []
   2:text <- new []
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     # create invalid sandbox 1
     type [get foo, x:offset]
@@ -170,7 +170,7 @@ scenario run-updates-status-with-first-erroneous-sandbox [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/empty-test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/empty-test-recipes
   ]
   # status line shows that error is in first sandbox
   screen-should-contain [
@@ -183,7 +183,7 @@ scenario run-updates-status-with-first-erroneous-sandbox-2 [
   assume-screen 50/width, 20/height
   1:text <- new []
   2:text <- new []
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     # create invalid sandbox 2
     type [get foo, x:offset]
@@ -196,7 +196,7 @@ scenario run-updates-status-with-first-erroneous-sandbox-2 [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/empty-test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/empty-test-recipes
   ]
   # status line shows that error is in second sandbox
   screen-should-contain [
@@ -209,11 +209,11 @@ scenario run-hides-errors-from-past-sandboxes [
   assume-screen 50/width, 20/height
   1:text <- new []
   2:text <- new [get foo, x:offset]  # invalid
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4  # generate error
   ]
-  event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/empty-test-recipes
+  event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/empty-test-recipes
   assume-console [
     left-click 3, 10
     press ctrl-k
@@ -221,7 +221,7 @@ scenario run-hides-errors-from-past-sandboxes [
     press F4  # update sandbox
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data
   ]
   # error should disappear
   screen-should-contain [
@@ -243,15 +243,15 @@ scenario run-updates-errors-for-shape-shifting-recipes [
   1:text <- new [recipe foo x:_elem -> z:_elem [
 local-scope
 load-ingredients
-y:address:number <- copy 0
+y:&:num <- copy 0
 z <- add x, y
 ]]
   2:text <- new [foo 2]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
-  event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+  event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   screen-should-contain [
     .  errors found (0)             run (F4)           .
     .                                                  .
@@ -268,7 +268,7 @@ z <- add x, y
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   # error should remain unchanged
   screen-should-contain [
@@ -288,24 +288,24 @@ scenario run-avoids-spurious-errors-on-reloading-shape-shifting-recipes [
   trace-until 100/app  # trace too long
   assume-screen 50/width, 20/height
   # overload a well-known shape-shifting recipe
-  1:text <- new [recipe length l:address:list:_elem -> n:number [
+  1:text <- new [recipe length l:&:list:_elem -> n:num [
 ]]
   # call code that uses other variants of it, but not it itself
-  2:text <- new [x:address:list:number <- copy 0
+  2:text <- new [x:&:list:num <- copy 0
 to-text x]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   # run it once
   assume-console [
     press F4
   ]
-  event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+  event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   # no errors anywhere on screen (can't check anything else, since to-text will return an address)
   screen-should-contain-in-color 1/red, [
     .                                                  .
     .                                                  .
     .                                                  .
     .                                                  .
-    .                      <-                          .
+    .             <-                                   .
     .                                                  .
     .                                                  .
     .                                                  .
@@ -316,7 +316,7 @@ to-text x]
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   # still no errors
   screen-should-contain-in-color 1/red, [
@@ -324,7 +324,7 @@ to-text x]
     .                                                  .
     .                                                  .
     .                                                  .
-    .                      <-                          .
+    .             <-                                   .
     .                                                  .
     .                                                  .
     .                                                  .
@@ -340,12 +340,12 @@ def foo [
   x <- copy 0
 ]]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -366,12 +366,12 @@ recipe foo \\[
   x <- copy 0
 ]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -392,16 +392,16 @@ scenario run-shows-get-on-non-container-errors [
   1:text <- new [ 
 def foo [
   local-scope
-  x:address:point <- new point:type
-  get x:address:point, 1:offset
+  x:&:point <- new point:type
+  get x:&:point, 1:offset
 ]]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -410,7 +410,7 @@ def foo [
     .0   edit           copy           delete          .
     .foo                                               .
     .foo: first ingredient of 'get' should be a contai↩.
-    .ner, but got 'x:address:point'                    .
+    .ner, but got 'x:&:point'                          .
   ]
 ]
 
@@ -420,17 +420,17 @@ scenario run-shows-non-literal-get-argument-errors [
   1:text <- new [ 
 def foo [
   local-scope
-  x:number <- copy 0
-  y:address:point <- new point:type
-  get *y:address:point, x:number
+  x:num <- copy 0
+  y:&:point <- new point:type
+  get *y:&:point, x:num
 ]]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -439,7 +439,7 @@ def foo [
     .0   edit           copy           delete          .
     .foo                                               .
     .foo: second ingredient of 'get' should have type ↩.
-    .'offset', but got 'x:number'                      .
+    .'offset', but got 'x:num'                         .
   ]
 ]
 
@@ -450,14 +450,14 @@ scenario run-shows-errors-everytime [
   1:text <- new [ 
 def foo [
   local-scope
-  x:number <- copy y:number
+  x:num <- copy y:num
 ]]
   2:text <- new [foo]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   assume-console [
     press F4
   ]
-  event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+  event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   screen-should-contain [
     .  errors found                 run (F4)           .
     .                                                  .
@@ -471,7 +471,7 @@ def foo [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   screen-should-contain [
     .  errors found                 run (F4)           .
@@ -486,22 +486,22 @@ def foo [
 scenario run-instruction-and-print-errors [
   trace-until 100/app  # trace too long
   assume-screen 50/width, 15/height
-  1:text <- new [get 1:address:point, 1:offset]
-  2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:text
+  1:text <- new [get 1:&:point, 1:offset]
+  2:&:programming-environment-data <- new-programming-environment screen:&:screen, 1:text
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data
+    event-loop screen:&:screen, console:&:console, 2:&:programming-environment-data
   ]
   screen-should-contain [
     .  errors found (0)             run (F4)           .
     .                                                  .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .0   edit           copy           delete          .
-    .get 1:address:point, 1:offset                     .
+    .get 1:&:point, 1:offset                           .
     .first ingredient of 'get' should be a container, ↩.
-    .but got '1:address:point'                         .
+    .but got '1:&:point'                               .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .                                                  .
   ]
@@ -512,7 +512,7 @@ scenario run-instruction-and-print-errors [
     .                                                  .
     .                                                  .
     .first ingredient of 'get' should be a container,  .
-    .but got '1:address:point'                         .
+    .but got '1:&:point'                               .
     .                                                  .
     .                                                  .
   ]
@@ -522,15 +522,15 @@ scenario run-instruction-and-print-errors-only-once [
   trace-until 100/app  # trace too long
   assume-screen 50/width, 10/height
   # editor contains an illegal instruction
-  1:text <- new [get 1234:number, foo:offset]
-  2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:text
+  1:text <- new [get 1234:num, foo:offset]
+  2:&:programming-environment-data <- new-programming-environment screen:&:screen, 1:text
   # run the code in the editors multiple times
   assume-console [
     press F4
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data
+    event-loop screen:&:screen, console:&:console, 2:&:programming-environment-data
   ]
   # check that screen prints error message just once
   screen-should-contain [
@@ -538,10 +538,10 @@ scenario run-instruction-and-print-errors-only-once [
     .                                                  .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .0   edit           copy           delete          .
-    .get 1234:number, foo:offset                       .
+    .get 1234:num, foo:offset                          .
     .unknown element 'foo' in container 'number'       .
     .first ingredient of 'get' should be a container, ↩.
-    .but got '1234:number'                             .
+    .but got '1234:num'                                .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .                                                  .
   ]
@@ -554,13 +554,13 @@ scenario sandbox-can-handle-infinite-loop [
   1:text <- new [{
 loop
 }]
-  2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:text
+  2:&:programming-environment-data <- new-programming-environment screen:&:screen, 1:text
   # run the sandbox
   assume-console [
     press F4
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data
+    event-loop screen:&:screen, console:&:console, 2:&:programming-environment-data
   ]
   screen-should-contain [
     .  errors found (0)             run (F4)           .
@@ -582,19 +582,19 @@ scenario sandbox-with-errors-shows-trace [
   # generate a stash and a error
   1:text <- new [recipe foo [
 local-scope
-a:number <- next-ingredient
-b:number <- next-ingredient
+a:num <- next-ingredient
+b:num <- next-ingredient
 stash [dividing by], b
-_, c:number <- divide-with-remainder a, b
+_, c:num <- divide-with-remainder a, b
 return b
 ]]
   2:text <- new [foo 4, 0]
-  3:address:programming-environment-data <- new-programming-environment screen:address:screen, 2:text
+  3:&:programming-environment-data <- new-programming-environment screen:&:screen, 2:text
   # run
   assume-console [
     press F4
   ]
-  event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+  event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   # screen prints error message
   screen-should-contain [
     .  errors found (0)             run (F4)           .
@@ -602,8 +602,8 @@ return b
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .0   edit           copy           delete          .
     .foo 4, 0                                          .
-    .foo: divide by zero in '_, c:number <- divide-wit↩.
-    .h-remainder a, b'                                 .
+    .foo: divide by zero in '_, c:num <- divide-with-r↩.
+    .emainder a, b'                                    .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .                                                  .
   ]
@@ -612,7 +612,7 @@ return b
     left-click 4, 15
   ]
   run [
-    event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data, 1:text/test-recipes
+    event-loop screen:&:screen, console:&:console, 3:&:programming-environment-data, 1:text/test-recipes
   ]
   # screen should expand trace
   screen-should-contain [
@@ -623,8 +623,8 @@ return b
     .foo 4, 0                                          .
     .dividing by 0                                     .
     .14 instructions run                               .
-    .foo: divide by zero in '_, c:number <- divide-wit↩.
-    .h-remainder a, b'                                 .
+    .foo: divide by zero in '_, c:num <- divide-with-r↩.
+    .emainder a, b'                                    .
     .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━.
     .                                                  .
   ]