diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-09-17 12:55:10 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-09-17 12:55:10 -0700 |
commit | 760f683f2755038a1b0c16522f5001b889096aa5 (patch) | |
tree | e07afd384d45be93d81fb4c1788b332fe05799a0 /counters.mu | |
parent | 80df524b566a708551f752ce8b82e21738591651 (diff) | |
download | mu-760f683f2755038a1b0c16522f5001b889096aa5.tar.gz |
3389
Diffstat (limited to 'counters.mu')
-rw-r--r-- | counters.mu | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/counters.mu b/counters.mu index f620ab50..1d959f6d 100644 --- a/counters.mu +++ b/counters.mu @@ -1,24 +1,24 @@ # example program: maintain multiple counters with isolated lexical scopes # (spaces) -def new-counter n:num -> default-space:address:array:location [ +def new-counter n:num -> default-space:&:array:location [ default-space <- new location:type, 30 load-ingredients ] -def increment-counter outer:address:array:location/names:new-counter, x:num -> n:num/space:1 [ +def increment-counter outer:&:array:location/names:new-counter, x:num -> n:num/space:1 [ local-scope load-ingredients - 0:address:array:location/names:new-counter <- copy outer # setup outer space; it *must* come from 'new-counter' + 0:&:array:location/names:new-counter <- copy outer # setup outer space; it *must* come from 'new-counter' n/space:1 <- add n/space:1, x ] def main [ local-scope # counter A - a:address:array:location <- new-counter 34 + a:&:array:location <- new-counter 34 # counter B - b:address:array:location <- new-counter 23 + b:&:array:location <- new-counter 23 # increment both by 2 but in different ways increment-counter a, 1 b-value:num <- increment-counter b, 2 |