diff --git a/sandbox.ld b/sandbox.ld index fc48bd5..0ec6ada 100644 --- a/sandbox.ld +++ b/sandbox.ld @@ -1,29 +1,35 @@ -& let state = #{:position (0, 0), :heading 0, :pencolor :white} +let state = #{:position (0, 0), :heading 0, :pencolor :white} -& let command = (:forward, 10) +let command = (:forward, 10) & match command with { -& (:goto, (x, y)) -> assoc (state, :position, (x, y)) +& & (:goto, (x, y)) -> assoc (state, :position, (x, y)) & & (:home) -> do state > & & assoc (_, :position, (0, 0)) > & & assoc (_, :heading, 0) & & (:clear) -> do state > & & assoc (state, :position, (0, 0)) > & & assoc (_, :heading, 0) -& (:right, turns) -> update (state, :heading, add (_, turns)) -& (:left, turns) -> update (state, :heading, sub (_, turns)) +& & (:right, turns) -> update (state, :heading, add (_, turns)) +& & (:left, turns) -> update (state, :heading, sub (_, turns)) & (:forward, steps) -> { +& print! ("matched forward") & let #{heading, position, ...} = state +& print! ("extracted {heading} and {position} from state") & let unit = heading/vector (heading) +& print! ("unit vector at {heading}: {unit}") & let vect = mult (steps, unit) -& update (state, :position, add (vect, _)) -& } -& (:back, steps) -> { -& let #{heading, position, ...} = state -& let unit = heading/vector (heading) -& let vect = mult (steps, unit) -& update (state, :position, sub (_, vect)) +& print! ("update vector: {vect}") +& let new_state = update (state, :position, add (vect, _)) +& print! ("new state: {new_state}") +& new_state & } +& & (:back, steps) -> { +& & let #{heading, position, ...} = state +& & let unit = heading/vector (heading) +& & let vect = mult (steps, unit) +& & update (state, :position, sub (_, vect)) +& & } & & (:penup) -> assoc (state, :pendown?, false) & & (:pendown) -> assoc (state, :pendown?, true) & & (:penwidth, pixels) -> assoc (state, :penwidth, pixels) @@ -34,12 +40,7 @@ & & (:hide) -> assoc (state, :visible?, false) & & (:background, _) -> state & } - -box foos = [] - -repeat 4 { - update! (foos, append (_, :foo)) -} - -do foos > unbox > count +let #{heading, position, ...x} = state +let unit = heading/vector (heading) +unit diff --git a/sandbox_run.txt b/sandbox_run.txt index 7065810..fda52a5 100644 --- a/sandbox_run.txt +++ b/sandbox_run.txt @@ -1,36 +1,138 @@ { - let test = 3 - let quux = loop ([1, 2]) with { - ([]) -> false - ([x]) -> eq? (x, test) - ([x, ...xs]) -> if eq? (x, test) - then :yes - else recur (xs) + let state = #{:position (0, 0), :heading 0, :pencolor :white} + let command = (:forward, 10) + match command with { + (:forward, steps) -> { + + print! ("matched forward") + let #{:heading heading, :position position, ..._} = state + print! ("extracted {heading} and {position} from state") + let unit = heading/vector (heading) + print! ("unit vector at {heading}: {unit}") + let vect = mult (steps, unit) + print! ("update vector: {vect}") + let new_state = update (state, :position, add (vect, _) ) + print! ("new state: {new_state}") + new_state } - let foo = :bar - fn not { - (false) -> true - (nil) -> true - (_) -> false } - let frob = loop ([1, 2, 3]) with { - ([]) -> false - ([y]) -> eq? (y, test) - ([y, ...ys]) -> if not (eq? (y, test) ) - then recur (ys) - else true -} - [quux, frob] } binding `base` in prelude stack depth: 1; match depth: 0 at stack index: 0 new locals: base@0//-1 -binding `eq?` in prelude +binding `type` in prelude stack depth: 2; match depth: 0 at stack index: 1 -new locals: base@0//-1|eq?@1//0 +new locals: base@0//-1|type@1//0 +***function clause matching: : (x) +binding `x` in type +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***accessing keyword: base :type stack depth: 1 +resolving binding `base` in type +locals: x@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `x` in type +locals: x@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0 +at locals position 0 +binding `coll?` in prelude +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: base@0//-1|type@1//0|coll?@2//0 +***function clause matching: : (coll as :dict) +binding `coll` in coll? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (coll as :list) +binding `coll` in coll? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (coll as :tuple) +binding `coll` in coll? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (_) +binding `ordered?` in prelude +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0 +***function clause matching: : (coll as :list) +binding `coll` in ordered? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (coll as :tuple) +binding `coll` in ordered? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (coll as :string) +binding `coll` in ordered? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: coll@0//0 +***function clause matching: : (_) +binding `assoc?` in prelude +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0 +***function clause matching: : (d as :dict) +binding `d` in assoc? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +***function clause matching: : (_) +binding `nil?` in prelude +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0 +***function clause matching: : (nil) +***function clause matching: : (_) +binding `some?` in prelude +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0 +***function clause matching: : (nil) +***function clause matching: : (_) +binding `some` in prelude +stack depth: 8; match depth: 0 +at stack index: 7 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0 +***function clause matching: : (nil, default) +binding `default` in some +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: default@1//0 +resolving binding `default` in some +locals: default@1//0 +at locals position 1 +***function clause matching: : (value, _) +binding `value` in some +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: value@0//0 +resolving binding `value` in some +locals: value@0//0 +at locals position 0 +binding `eq?` in prelude +stack depth: 9; match depth: 0 +at stack index: 8 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0 +***function clause matching: : (x) +binding `x` in eq? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 ***function clause matching: : (x, y) binding `x` in eq? stack depth: 2; match depth: 1 @@ -51,14 +153,198 @@ at locals position 0 resolving binding `y` in eq? locals: x@0//0|y@1//0 at locals position 1 -resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0 -at locals position 0 -binding `first` in prelude +***function clause matching: : (x, y, ...zs) +binding `x` in eq? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in eq? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in eq? stack depth: 3; match depth: 0 at stack index: 2 -new locals: base@0//-1|eq?@1//0|first@2//0 +new locals: x@0//0|y@1//0|zs@2//0 +***calling function eq? stack depth: 3 +resolving binding `x` in eq? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 0 +resolving binding `y` in eq? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `eq?` in eq? +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +***after 2 args stack depth: 6 +***after condition stack depth: 4 +***entering loop stack depth: 3 +resolving binding `y` in eq? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `zs` in eq? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***after loop args stack depth: 5 +***loop: after store stack depth: 3 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b]) +binding `a` in eq? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in eq? +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +***loop: before body stack depth: 6 +***calling function eq? stack depth: 6 +resolving binding `a` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 3 +resolving binding `x` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 0 +resolving binding `eq?` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 1 +***after 2 args stack depth: 9 +***calling function eq? stack depth: 6 +resolving binding `b` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 5 +resolving binding `x` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 0 +resolving binding `eq?` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 1 +***after 2 args stack depth: 9 +***loop: after body, before store stack depth: 7 +***loop: after body, after store stack depth: 6 +leaving scope 1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b, ...cs]) +binding `a` in eq? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in eq? +stack depth: 7; match depth: 1 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +binding `cs` in eq? +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +***loop: before body stack depth: 7 +***calling function eq? stack depth: 7 +resolving binding `a` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 3 +resolving binding `x` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 0 +resolving binding `eq?` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +as upvalue 1 +***after 2 args stack depth: 10 +***after condition stack depth: 8 +***recur: before args stack depth: 7 +recur arg: 0 +resolving binding `b` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +recur arg: 1 +resolving binding `cs` in eq? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 6 +***recur: after args stack depth: 9 +***recur: after store stack depth: 7 +loop root depth: 3 +***recur: after stack reset stack depth: 3 +***recur: after load, end of compilation stack depth: 5 +***after consequent stack depth: 5 +***after alternative stack depth: 5 +***loop: after body, before store stack depth: 5 +***loop: after body, after store stack depth: 4 +leaving scope 1 +releasing binding cs@6//1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 4 to 3 stack depth: 4 +***before loop arity adjustment stack depth: 5 +***at very end of loop after load stack depth: 4 +***after consequent stack depth: 4 +***after alternative stack depth: 4 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0 +at locals position 0 +resolving binding `eq?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0 +at locals position 8 +binding `bool?` in prelude +stack depth: 10; match depth: 0 +at stack index: 9 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0 +***function clause matching: : (false) +***function clause matching: : (true) +***function clause matching: : (_) +binding `true?` in prelude +stack depth: 11; match depth: 0 +at stack index: 10 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0 +***function clause matching: : (true) +***function clause matching: : (_) +binding `false?` in prelude +stack depth: 12; match depth: 0 +at stack index: 11 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0 +***function clause matching: : (false) +***function clause matching: : (_) +binding `bool` in prelude +stack depth: 13; match depth: 0 +at stack index: 12 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0 +***function clause matching: : (nil) +***function clause matching: : (false) +***function clause matching: : (_) +binding `not` in prelude +stack depth: 14; match depth: 0 +at stack index: 13 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0 +***function clause matching: : (nil) +***function clause matching: : (false) +***function clause matching: : (_) +binding `tuple?` in prelude +stack depth: 15; match depth: 0 +at stack index: 14 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0 +***function clause matching: : (tuple as :tuple) +binding `tuple` in tuple? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: tuple@0//0 +***function clause matching: : (_) +binding `fn?` in prelude +stack depth: 16; match depth: 0 +at stack index: 15 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0 +***function clause matching: : (f as :fn) +binding `f` in fn? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: f@0//0 +***function clause matching: : (_) +binding `first` in prelude +stack depth: 17; match depth: 0 +at stack index: 16 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0 ***function clause matching: : ([]) +***function clause matching: : (()) ***function clause matching: : (xs as :list) binding `xs` in first stack depth: 1; match depth: 0 @@ -72,14 +358,28 @@ as enclosing upvalue 0 resolving binding `xs` in first locals: xs@0//0 at locals position 0 +***function clause matching: : (xs as :tuple) +binding `xs` in first +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :first stack depth: 1 +resolving binding `base` in first +locals: xs@0//0 +as upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in first +locals: xs@0//0 +at locals position 0 resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0|first@2//0 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0 at locals position 0 binding `rest` in prelude -stack depth: 4; match depth: 0 -at stack index: 3 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0 +stack depth: 18; match depth: 0 +at stack index: 17 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0 ***function clause matching: : ([]) +***function clause matching: : (()) ***function clause matching: : (xs as :list) binding `xs` in rest stack depth: 1; match depth: 0 @@ -93,13 +393,26 @@ as enclosing upvalue 0 resolving binding `xs` in rest locals: xs@0//0 at locals position 0 +***function clause matching: : (xs as :tuple) +binding `xs` in rest +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :rest stack depth: 1 +resolving binding `base` in rest +locals: xs@0//0 +as upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in rest +locals: xs@0//0 +at locals position 0 resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0 at locals position 0 binding `inc` in prelude -stack depth: 5; match depth: 0 -at stack index: 4 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0 +stack depth: 19; match depth: 0 +at stack index: 18 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0 ***function clause matching: : (x as :number) binding `x` in inc stack depth: 1; match depth: 0 @@ -114,12 +427,162 @@ resolving binding `x` in inc locals: x@0//0 at locals position 0 resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0 +at locals position 0 +binding `dec` in prelude +stack depth: 20; match depth: 0 +at stack index: 19 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0 +***function clause matching: : (x as :number) +binding `x` in dec +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***accessing keyword: base :dec stack depth: 1 +resolving binding `base` in dec +locals: x@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `x` in dec +locals: x@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0 +at locals position 0 +binding `count` in prelude +stack depth: 21; match depth: 0 +at stack index: 20 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0 +***function clause matching: : (xs as :list) +binding `xs` in count +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :count stack depth: 1 +resolving binding `base` in count +locals: xs@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in count +locals: xs@0//0 +at locals position 0 +***function clause matching: : (xs as :tuple) +binding `xs` in count +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :count stack depth: 1 +resolving binding `base` in count +locals: xs@0//0 +as upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in count +locals: xs@0//0 +at locals position 0 +***function clause matching: : (xs as :dict) +binding `xs` in count +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :count stack depth: 1 +resolving binding `base` in count +locals: xs@0//0 +as upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in count +locals: xs@0//0 +at locals position 0 +***function clause matching: : (xs as :string) +binding `xs` in count +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***accessing keyword: base :count stack depth: 1 +resolving binding `base` in count +locals: xs@0//0 +as upvalue 0 +***after keyword access stack depth: 2 +resolving binding `xs` in count +locals: xs@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0 +at locals position 0 +binding `empty?` in prelude +stack depth: 22; match depth: 0 +at stack index: 21 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0 +***function clause matching: : ([]) +***function clause matching: : (#{}) +***function clause matching: : (()) +***function clause matching: : ("") +***function clause matching: : (_) +binding `any?` in prelude +stack depth: 23; match depth: 0 +at stack index: 22 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0 +***function clause matching: : ([..._]) +***function clause matching: : (#{..._}) +***function clause matching: : ((..._)) +***function clause matching: : (s as :string) +binding `s` in any? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: s@0//0 +***calling function not stack depth: 1 +***calling function empty? stack depth: 1 +resolving binding `s` in any? +locals: s@0//0 +at locals position 0 +resolving binding `empty?` in any? +locals: s@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `not` in any? +locals: s@0//0 +as enclosing upvalue 1 +***after 1 args stack depth: 3 +***function clause matching: : (_) +resolving binding `empty?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0 +at locals position 21 +resolving binding `not` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0 +at locals position 13 +binding `list?` in prelude +stack depth: 24; match depth: 0 +at stack index: 23 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0 +***function clause matching: : (l as :list) +binding `l` in list? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: l@0//0 +***function clause matching: : (_) +binding `list` in prelude +stack depth: 25; match depth: 0 +at stack index: 24 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0 +***function clause matching: : (x) +binding `x` in list +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***accessing keyword: base :list stack depth: 1 +resolving binding `base` in list +locals: x@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `x` in list +locals: x@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0 at locals position 0 binding `append` in prelude -stack depth: 6; match depth: 0 -at stack index: 5 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0 +stack depth: 26; match depth: 0 +at stack index: 25 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0 ***function clause matching: : () ***function clause matching: : (xs as :list) binding `xs` in append @@ -150,12 +613,12 @@ resolving binding `x` in append locals: xs@0//0|x@1//0 at locals position 1 resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0 at locals position 0 binding `fold` in prelude -stack depth: 7; match depth: 0 -at stack index: 6 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0 +stack depth: 27; match depth: 0 +at stack index: 26 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0 ***function clause matching: : (f as :fn, []) binding `f` in fold stack depth: 2; match depth: 1 @@ -255,8 +718,8 @@ at locals position 0 ***loop: after body, before store stack depth: 7 ***loop: after body, after store stack depth: 6 leaving scope 1 -releasing binding Some(Binding { name: "curr", depth: 1, stack_pos: 4 }) -releasing binding Some(Binding { name: "prev", depth: 1, stack_pos: 3 }) +releasing binding curr@4//1 +releasing binding prev@3//1 ***resetting the stack after loop from 6 to 3 stack depth: 6 ***loop: after load stack depth: 6 ***loop clause matching: : (prev, curr, remaining) @@ -312,25 +775,557 @@ loop root depth: 3 ***loop: after body, before store stack depth: 6 ***loop: after body, after store stack depth: 5 leaving scope 1 -releasing binding Some(Binding { name: "remaining", depth: 1, stack_pos: 5 }) -releasing binding Some(Binding { name: "curr", depth: 1, stack_pos: 4 }) -releasing binding Some(Binding { name: "prev", depth: 1, stack_pos: 3 }) +releasing binding remaining@5//1 +releasing binding curr@4//1 +releasing binding prev@3//1 ***resetting the stack after loop from 5 to 3 stack depth: 5 ***before loop arity adjustment stack depth: 6 ***at very end of loop after load stack depth: 4 resolving binding `fold` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0 -at locals position 6 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0 +at locals position 26 resolving binding `first` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0 -at locals position 2 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0 +at locals position 16 resolving binding `rest` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0 +at locals position 17 +binding `foldr` in prelude +stack depth: 28; match depth: 0 +at stack index: 27 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0 +***function clause matching: : (f as :fn, []) +binding `f` in foldr +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f@0//0 +***function clause matching: : (f as :fn, xs as :list) +binding `f` in foldr +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f@0//0 +binding `xs` in foldr +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: f@0//0|xs@1//0 +***calling function foldr stack depth: 2 +resolving binding `f` in foldr +locals: f@0//0|xs@1//0 +at locals position 0 +resolving binding `xs` in foldr +locals: f@0//0|xs@1//0 +at locals position 1 +***calling function f stack depth: 4 +resolving binding `f` in foldr +locals: f@0//0|xs@1//0 +at locals position 0 +***after 0 args stack depth: 5 +resolving binding `foldr` in foldr +locals: f@0//0|xs@1//0 +as enclosing upvalue 0 +***after 3 args stack depth: 6 +***function clause matching: : (f as :fn, [], root) +binding `f` in foldr +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: f@0//0 +binding `root` in foldr +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: f@0//0|root@2//0 +***function clause matching: : (f as :fn, xs as :list, root) +binding `f` in foldr +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: f@0//0 +binding `xs` in foldr +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: f@0//0|xs@1//0 +binding `root` in foldr +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: f@0//0|xs@1//0|root@2//0 +***entering loop stack depth: 3 +resolving binding `root` in foldr +locals: f@0//0|xs@1//0|root@2//0 +at locals position 2 +***calling function first stack depth: 4 +resolving binding `xs` in foldr +locals: f@0//0|xs@1//0|root@2//0 +at locals position 1 +resolving binding `first` in foldr +locals: f@0//0|xs@1//0|root@2//0 +as enclosing upvalue 1 +***after 1 args stack depth: 6 +***calling function rest stack depth: 5 +resolving binding `xs` in foldr +locals: f@0//0|xs@1//0|root@2//0 +at locals position 1 +resolving binding `rest` in foldr +locals: f@0//0|xs@1//0|root@2//0 +as enclosing upvalue 2 +***after 1 args stack depth: 7 +***after loop args stack depth: 6 +***loop: after store stack depth: 3 +***loop: after load stack depth: 6 +***loop clause matching: : (prev, curr, []) +binding `prev` in foldr +stack depth: 6; match depth: 2 +at stack index: 3 +new locals: f@0//0|xs@1//0|root@2//0|prev@3//1 +binding `curr` in foldr +stack depth: 6; match depth: 1 +at stack index: 4 +new locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1 +***loop: before body stack depth: 6 +***calling function f stack depth: 6 +resolving binding `curr` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1 +at locals position 4 +resolving binding `prev` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1 at locals position 3 +resolving binding `f` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1 +at locals position 0 +***after 2 args stack depth: 9 +***loop: after body, before store stack depth: 7 +***loop: after body, after store stack depth: 6 +leaving scope 1 +releasing binding curr@4//1 +releasing binding prev@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 +***loop: after load stack depth: 6 +***loop clause matching: : (prev, curr, remaining) +binding `prev` in foldr +stack depth: 6; match depth: 2 +at stack index: 3 +new locals: f@0//0|xs@1//0|root@2//0|prev@3//1 +binding `curr` in foldr +stack depth: 6; match depth: 1 +at stack index: 4 +new locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1 +binding `remaining` in foldr +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +***loop: before body stack depth: 6 +***recur: before args stack depth: 6 +recur arg: 0 +***calling function f stack depth: 6 +resolving binding `curr` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +at locals position 4 +resolving binding `prev` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +at locals position 3 +resolving binding `f` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +at locals position 0 +***after 2 args stack depth: 9 +recur arg: 1 +***calling function first stack depth: 7 +resolving binding `remaining` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +at locals position 5 +resolving binding `first` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +as upvalue 1 +***after 1 args stack depth: 9 +recur arg: 2 +***calling function rest stack depth: 8 +resolving binding `remaining` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +at locals position 5 +resolving binding `rest` in foldr +locals: f@0//0|xs@1//0|root@2//0|prev@3//1|curr@4//1|remaining@5//1 +as upvalue 2 +***after 1 args stack depth: 10 +***recur: after args stack depth: 9 +***recur: after store stack depth: 6 +loop root depth: 3 +***recur: after stack reset stack depth: 3 +***recur: after load, end of compilation stack depth: 6 +***loop: after body, before store stack depth: 6 +***loop: after body, after store stack depth: 5 +leaving scope 1 +releasing binding remaining@5//1 +releasing binding curr@4//1 +releasing binding prev@3//1 +***resetting the stack after loop from 5 to 3 stack depth: 5 +***before loop arity adjustment stack depth: 6 +***at very end of loop after load stack depth: 4 +resolving binding `foldr` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0 +at locals position 27 +resolving binding `first` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0 +at locals position 16 +resolving binding `rest` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0 +at locals position 17 +binding `map` in prelude +stack depth: 29; match depth: 0 +at stack index: 28 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0 +***function clause matching: : (f as :fn) +binding `f` in map +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: f@0//0 +***calling function map stack depth: 1 +resolving binding `f` in map +locals: f@0//0 +at locals position 0 +resolving binding `map` in map +locals: f@0//0 +as enclosing upvalue 0 +***function clause matching: : (kw as :keyword) +binding `kw` in map +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: kw@0//0 +***calling function map stack depth: 1 +resolving binding `kw` in map +locals: kw@0//0 +at locals position 0 +resolving binding `map` in map +locals: kw@0//0 +as upvalue 0 +***function clause matching: : (f as :fn, xs) +binding `f` in map +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f@0//0 +binding `xs` in map +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: f@0//0|xs@1//0 +binding `mapper` in map +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: f@0//0|xs@1//0|mapper@2//1 +***function clause matching: : (prev, curr) +binding `prev` in mapper +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: prev@0//0 +binding `curr` in mapper +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: prev@0//0|curr@1//0 +***calling function append stack depth: 2 +resolving binding `prev` in mapper +locals: prev@0//0|curr@1//0 +at locals position 0 +***calling function f stack depth: 3 +resolving binding `curr` in mapper +locals: prev@0//0|curr@1//0 +at locals position 1 +resolving binding `f` in mapper +locals: prev@0//0|curr@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 5 +resolving binding `append` in mapper +locals: prev@0//0|curr@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `f` in map +locals: f@0//0|xs@1//0|mapper@2//1 +at locals position 0 +resolving binding `append` in map +locals: f@0//0|xs@1//0|mapper@2//1 +as enclosing upvalue 1 +***calling function fold stack depth: 3 +resolving binding `mapper` in map +locals: f@0//0|xs@1//0|mapper@2//1 +at locals position 2 +resolving binding `xs` in map +locals: f@0//0|xs@1//0|mapper@2//1 +at locals position 1 +resolving binding `fold` in map +locals: f@0//0|xs@1//0|mapper@2//1 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +leaving scope 1 +releasing binding mapper@2//1 +***leaving block before pop stack depth: 3 +popping back from 3 to 2 +***function clause matching: : (kw as :keyword, xs) +binding `kw` in map +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: kw@0//0 +binding `xs` in map +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: kw@0//0|xs@1//0 +binding `mapper` in map +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: kw@0//0|xs@1//0|mapper@2//1 +***function clause matching: : (prev, curr) +binding `prev` in mapper +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: prev@0//0 +binding `curr` in mapper +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: prev@0//0|curr@1//0 +***calling function append stack depth: 2 +resolving binding `prev` in mapper +locals: prev@0//0|curr@1//0 +at locals position 0 +***calling function kw stack depth: 3 +resolving binding `curr` in mapper +locals: prev@0//0|curr@1//0 +at locals position 1 +resolving binding `kw` in mapper +locals: prev@0//0|curr@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 5 +resolving binding `append` in mapper +locals: prev@0//0|curr@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `kw` in map +locals: kw@0//0|xs@1//0|mapper@2//1 +at locals position 0 +resolving binding `append` in map +locals: kw@0//0|xs@1//0|mapper@2//1 +as upvalue 1 +***calling function fold stack depth: 3 +resolving binding `mapper` in map +locals: kw@0//0|xs@1//0|mapper@2//1 +at locals position 2 +resolving binding `xs` in map +locals: kw@0//0|xs@1//0|mapper@2//1 +at locals position 1 +resolving binding `fold` in map +locals: kw@0//0|xs@1//0|mapper@2//1 +as upvalue 2 +***after 3 args stack depth: 7 +leaving scope 1 +releasing binding mapper@2//1 +***leaving block before pop stack depth: 3 +popping back from 3 to 2 +resolving binding `map` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0 +at locals position 28 +resolving binding `append` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0 +at locals position 25 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0 +at locals position 26 +binding `filter` in prelude +stack depth: 30; match depth: 0 +at stack index: 29 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0 +***function clause matching: : (p? as :fn) +binding `p?` in filter +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: p?@0//0 +***calling function filter stack depth: 1 +resolving binding `p?` in filter +locals: p?@0//0 +at locals position 0 +resolving binding `filter` in filter +locals: p?@0//0 +as enclosing upvalue 0 +***function clause matching: : (p? as :fn, xs) +binding `p?` in filter +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: p?@0//0 +binding `xs` in filter +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: p?@0//0|xs@1//0 +binding `filterer` in filter +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: p?@0//0|xs@1//0|filterer@2//1 +***function clause matching: : (filtered, x) +binding `filtered` in filterer +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: filtered@0//0 +binding `x` in filterer +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: filtered@0//0|x@1//0 +***calling function p? stack depth: 2 +resolving binding `x` in filterer +locals: filtered@0//0|x@1//0 +at locals position 1 +resolving binding `p?` in filterer +locals: filtered@0//0|x@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 4 +***after condition stack depth: 3 +***calling function append stack depth: 2 +resolving binding `filtered` in filterer +locals: filtered@0//0|x@1//0 +at locals position 0 +resolving binding `x` in filterer +locals: filtered@0//0|x@1//0 +at locals position 1 +resolving binding `append` in filterer +locals: filtered@0//0|x@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +***after consequent stack depth: 3 +resolving binding `filtered` in filterer +locals: filtered@0//0|x@1//0 +at locals position 0 +***after alternative stack depth: 3 +resolving binding `p?` in filter +locals: p?@0//0|xs@1//0|filterer@2//1 +at locals position 0 +resolving binding `append` in filter +locals: p?@0//0|xs@1//0|filterer@2//1 +as enclosing upvalue 1 +***calling function fold stack depth: 3 +resolving binding `filterer` in filter +locals: p?@0//0|xs@1//0|filterer@2//1 +at locals position 2 +resolving binding `xs` in filter +locals: p?@0//0|xs@1//0|filterer@2//1 +at locals position 1 +resolving binding `fold` in filter +locals: p?@0//0|xs@1//0|filterer@2//1 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +leaving scope 1 +releasing binding filterer@2//1 +***leaving block before pop stack depth: 3 +popping back from 3 to 2 +resolving binding `filter` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0 +at locals position 29 +resolving binding `append` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0 +at locals position 25 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0 +at locals position 26 +binding `keep` in prelude +stack depth: 31; match depth: 0 +at stack index: 30 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0 +***function clause matching: : (xs) +binding `xs` in keep +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***calling function filter stack depth: 1 +resolving binding `some?` in keep +locals: xs@0//0 +as enclosing upvalue 0 +resolving binding `xs` in keep +locals: xs@0//0 +at locals position 0 +resolving binding `filter` in keep +locals: xs@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +resolving binding `some?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0 +at locals position 6 +resolving binding `filter` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0 +at locals position 29 +binding `concat` in prelude +stack depth: 32; match depth: 0 +at stack index: 31 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0 +***function clause matching: : (x as :string, y as :string) +binding `x` in concat +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in concat +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +resolving binding `x` in concat +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in concat +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (xs as :list, ys as :list) +binding `xs` in concat +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: xs@0//0 +binding `ys` in concat +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: xs@0//0|ys@1//0 +***accessing keyword: base :concat stack depth: 2 +resolving binding `base` in concat +locals: xs@0//0|ys@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `xs` in concat +locals: xs@0//0|ys@1//0 +at locals position 0 +resolving binding `ys` in concat +locals: xs@0//0|ys@1//0 +at locals position 1 +***function clause matching: : (xs, ys, ...zs) +binding `xs` in concat +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: xs@0//0 +binding `ys` in concat +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: xs@0//0|ys@1//0 +binding `zs` in concat +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: xs@0//0|ys@1//0|zs@2//0 +***calling function fold stack depth: 3 +resolving binding `concat` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +at locals position 2 +***calling function concat stack depth: 5 +resolving binding `xs` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +at locals position 0 +resolving binding `ys` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +at locals position 1 +resolving binding `concat` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +as upvalue 1 +***after 2 args stack depth: 8 +resolving binding `fold` in concat +locals: xs@0//0|ys@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0 +at locals position 0 +resolving binding `concat` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0 +at locals position 31 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0 +at locals position 26 binding `contains?` in prelude -stack depth: 8; match depth: 0 -at stack index: 7 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0 +stack depth: 33; match depth: 0 +at stack index: 32 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0 ***function clause matching: : (value, l as :list) binding `value` in contains? stack depth: 2; match depth: 1 @@ -397,25 +1392,1008 @@ loop root depth: 2 ***loop: after body, before store stack depth: 3 ***loop: after body, after store stack depth: 2 leaving scope 1 -releasing binding Some(Binding { name: "xs", depth: 1, stack_pos: 3 }) +releasing binding xs@3//1 ***resetting the stack after loop from 2 to 2 stack depth: 2 ***before loop arity adjustment stack depth: 3 ***at very end of loop after load stack depth: 3 resolving binding `first` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0 -at locals position 2 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0 +at locals position 16 resolving binding `eq?` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0 -at locals position 1 +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0 +at locals position 8 resolving binding `rest` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0 -at locals position 3 -binding `add` in prelude -stack depth: 9; match depth: 0 -at stack index: 8 -new locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -***function clause matching: : () +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0 +at locals position 17 +binding `print!` in prelude +stack depth: 34; match depth: 0 +at stack index: 33 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0 +***function clause matching: : (...args) +binding `args` in print! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: args@0//0 +***accessing keyword: base :print! stack depth: 1 +resolving binding `base` in print! +locals: args@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `args` in print! +locals: args@0//0 +at locals position 0 +leaving scope 1 +***leaving block before pop stack depth: 1 +popping back from 1 to 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0 +at locals position 0 +binding `show` in prelude +stack depth: 35; match depth: 0 +at stack index: 34 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0 ***function clause matching: : (x) +binding `x` in show +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***accessing keyword: base :show stack depth: 1 +resolving binding `base` in show +locals: x@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `x` in show +locals: x@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0 +at locals position 0 +binding `report!` in prelude +stack depth: 36; match depth: 0 +at stack index: 35 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0 +***function clause matching: : (x) +binding `x` in report! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function print! stack depth: 1 +resolving binding `x` in report! +locals: x@0//0 +at locals position 0 +resolving binding `print!` in report! +locals: x@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `x` in report! +locals: x@0//0 +at locals position 0 +leaving scope 1 +***leaving block before pop stack depth: 1 +popping back from 1 to 1 +***function clause matching: : (msg as :string, x) +binding `msg` in report! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: msg@0//0 +binding `x` in report! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: msg@0//0|x@1//0 +***calling function print! stack depth: 2 +***calling function concat stack depth: 2 +resolving binding `msg` in report! +locals: msg@0//0|x@1//0 +at locals position 0 +***calling function show stack depth: 3 +resolving binding `x` in report! +locals: msg@0//0|x@1//0 +at locals position 1 +resolving binding `show` in report! +locals: msg@0//0|x@1//0 +as enclosing upvalue 1 +***after 1 args stack depth: 5 +resolving binding `concat` in report! +locals: msg@0//0|x@1//0 +as enclosing upvalue 2 +***after 2 args stack depth: 5 +resolving binding `print!` in report! +locals: msg@0//0|x@1//0 +as upvalue 0 +***after 1 args stack depth: 4 +resolving binding `x` in report! +locals: msg@0//0|x@1//0 +at locals position 1 +leaving scope 1 +***leaving block before pop stack depth: 2 +popping back from 2 to 2 +resolving binding `print!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0 +at locals position 33 +resolving binding `show` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0 +at locals position 34 +resolving binding `concat` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0 +at locals position 31 +binding `doc!` in prelude +stack depth: 37; match depth: 0 +at stack index: 36 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0 +***function clause matching: : (f as :fn) +binding `f` in doc! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: f@0//0 +resolving binding `f` in doc! +locals: f@0//0 +at locals position 0 +***accessing keyword: base :doc! stack depth: 2 +resolving binding `base` in doc! +locals: f@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `print!` in doc! +locals: f@0//0 +as enclosing upvalue 1 +***function clause matching: : (_) +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0 +at locals position 0 +resolving binding `print!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0 +at locals position 33 +binding `string?` in prelude +stack depth: 38; match depth: 0 +at stack index: 37 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0 +***function clause matching: : (x as :string) +binding `x` in string? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (_) +binding `string` in prelude +stack depth: 39; match depth: 0 +at stack index: 38 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0 +***function clause matching: : (x as :string) +binding `x` in string +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in string +locals: x@0//0 +at locals position 0 +***function clause matching: : (x) +binding `x` in string +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function show stack depth: 1 +resolving binding `x` in string +locals: x@0//0 +at locals position 0 +resolving binding `show` in string +locals: x@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : (x, ...xs) +binding `x` in string +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `xs` in string +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|xs@1//0 +***entering loop stack depth: 2 +***calling function string stack depth: 2 +resolving binding `x` in string +locals: x@0//0|xs@1//0 +at locals position 0 +resolving binding `string` in string +locals: x@0//0|xs@1//0 +as enclosing upvalue 1 +***after 1 args stack depth: 4 +resolving binding `xs` in string +locals: x@0//0|xs@1//0 +at locals position 1 +***after loop args stack depth: 4 +***loop: after store stack depth: 2 +***loop: after load stack depth: 4 +***loop clause matching: : (out, [y]) +binding `out` in string +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x@0//0|xs@1//0|out@2//1 +binding `y` in string +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: x@0//0|xs@1//0|out@2//1|y@4//1 +***loop: before body stack depth: 5 +***calling function concat stack depth: 5 +resolving binding `out` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1 +at locals position 2 +***calling function show stack depth: 6 +resolving binding `y` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1 +at locals position 4 +resolving binding `show` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1 +as upvalue 0 +***after 1 args stack depth: 8 +resolving binding `concat` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1 +as enclosing upvalue 2 +***after 2 args stack depth: 8 +***loop: after body, before store stack depth: 6 +***loop: after body, after store stack depth: 5 +leaving scope 1 +releasing binding y@4//1 +releasing binding out@2//1 +***resetting the stack after loop from 5 to 2 stack depth: 5 +***loop: after load stack depth: 4 +***loop clause matching: : (out, [y, ...ys]) +binding `out` in string +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x@0//0|xs@1//0|out@2//1 +binding `y` in string +stack depth: 6; match depth: 1 +at stack index: 4 +new locals: x@0//0|xs@1//0|out@2//1|y@4//1 +binding `ys` in string +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +***loop: before body stack depth: 6 +***recur: before args stack depth: 6 +recur arg: 0 +***calling function concat stack depth: 6 +resolving binding `out` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +at locals position 2 +***calling function show stack depth: 7 +resolving binding `y` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +at locals position 4 +resolving binding `show` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +as upvalue 0 +***after 1 args stack depth: 9 +resolving binding `concat` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +as upvalue 2 +***after 2 args stack depth: 9 +recur arg: 1 +resolving binding `ys` in string +locals: x@0//0|xs@1//0|out@2//1|y@4//1|ys@5//1 +at locals position 5 +***recur: after args stack depth: 8 +***recur: after store stack depth: 6 +loop root depth: 2 +***recur: after stack reset stack depth: 2 +***recur: after load, end of compilation stack depth: 4 +***loop: after body, before store stack depth: 4 +***loop: after body, after store stack depth: 3 +leaving scope 1 +releasing binding ys@5//1 +releasing binding y@4//1 +releasing binding out@2//1 +***resetting the stack after loop from 3 to 2 stack depth: 3 +***before loop arity adjustment stack depth: 4 +***at very end of loop after load stack depth: 3 +resolving binding `show` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0 +at locals position 34 +resolving binding `string` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0 +at locals position 38 +resolving binding `concat` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0 +at locals position 31 +binding `join` in prelude +stack depth: 40; match depth: 0 +at stack index: 39 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0 +***function clause matching: : ([]) +***function clause matching: : ([str as :string]) +binding `str` in join +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: str@1//0 +resolving binding `str` in join +locals: str@1//0 +at locals position 1 +***function clause matching: : (strs as :list) +binding `strs` in join +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: strs@0//0 +***calling function join stack depth: 1 +resolving binding `strs` in join +locals: strs@0//0 +at locals position 0 +resolving binding `join` in join +locals: strs@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +***function clause matching: : ([], separator as :string) +binding `separator` in join +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: separator@1//0 +***function clause matching: : ([str as :string], separator as :string) +binding `str` in join +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: str@2//0 +binding `separator` in join +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: str@2//0|separator@1//0 +resolving binding `str` in join +locals: str@2//0|separator@1//0 +at locals position 2 +***function clause matching: : ([str, ...strs], separator as :string) +binding `str` in join +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: str@2//0 +binding `strs` in join +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: str@2//0|strs@3//0 +binding `separator` in join +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: str@2//0|strs@3//0|separator@1//0 +***calling function fold stack depth: 4 +***function clause matching: : (joined, to_join) +binding `joined` in _anon +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: joined@0//0 +binding `to_join` in _anon +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: joined@0//0|to_join@1//0 +***calling function concat stack depth: 2 +resolving binding `joined` in _anon +locals: joined@0//0|to_join@1//0 +at locals position 0 +resolving binding `separator` in _anon +locals: joined@0//0|to_join@1//0 +as enclosing upvalue 0 +resolving binding `to_join` in _anon +locals: joined@0//0|to_join@1//0 +at locals position 1 +resolving binding `concat` in _anon +locals: joined@0//0|to_join@1//0 +as enclosing upvalue 1 +***after 3 args stack depth: 6 +resolving binding `separator` in join +locals: str@2//0|strs@3//0|separator@1//0 +at locals position 1 +resolving binding `concat` in join +locals: str@2//0|strs@3//0|separator@1//0 +as enclosing upvalue 1 +resolving binding `strs` in join +locals: str@2//0|strs@3//0|separator@1//0 +at locals position 3 +resolving binding `str` in join +locals: str@2//0|strs@3//0|separator@1//0 +at locals position 2 +resolving binding `fold` in join +locals: str@2//0|strs@3//0|separator@1//0 +as enclosing upvalue 2 +***after 3 args stack depth: 8 +resolving binding `join` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0 +at locals position 39 +resolving binding `concat` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0 +at locals position 31 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0 +at locals position 26 +binding `split` in prelude +stack depth: 41; match depth: 0 +at stack index: 40 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0 +***function clause matching: : (str as :string, splitter as :string) +binding `str` in split +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: str@0//0 +binding `splitter` in split +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: str@0//0|splitter@1//0 +***accessing keyword: base :split stack depth: 2 +resolving binding `base` in split +locals: str@0//0|splitter@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `str` in split +locals: str@0//0|splitter@1//0 +at locals position 0 +resolving binding `splitter` in split +locals: str@0//0|splitter@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0 +at locals position 0 +binding `trim` in prelude +stack depth: 42; match depth: 0 +at stack index: 41 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0 +***function clause matching: : (str as :string) +binding `str` in trim +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :trim stack depth: 1 +resolving binding `base` in trim +locals: str@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `str` in trim +locals: str@0//0 +at locals position 0 +***function clause matching: : (str as :string, :left) +binding `str` in trim +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :triml stack depth: 2 +resolving binding `base` in trim +locals: str@0//0 +as upvalue 0 +***after keyword access stack depth: 3 +resolving binding `str` in trim +locals: str@0//0 +at locals position 0 +***function clause matching: : (str as :string, :right) +binding `str` in trim +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :trimr stack depth: 2 +resolving binding `base` in trim +locals: str@0//0 +as upvalue 0 +***after keyword access stack depth: 3 +resolving binding `str` in trim +locals: str@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0 +at locals position 0 +binding `upcase` in prelude +stack depth: 43; match depth: 0 +at stack index: 42 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0 +***function clause matching: : (str as :string) +binding `str` in upcase +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :upcase stack depth: 1 +resolving binding `base` in upcase +locals: str@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `str` in upcase +locals: str@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0 +at locals position 0 +binding `downcase` in prelude +stack depth: 44; match depth: 0 +at stack index: 43 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0 +***function clause matching: : (str as :string) +binding `str` in downcase +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :downcase stack depth: 1 +resolving binding `base` in downcase +locals: str@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `str` in downcase +locals: str@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0 +at locals position 0 +binding `chars` in prelude +stack depth: 45; match depth: 0 +at stack index: 44 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0 +***function clause matching: : (str as :string) +binding `str` in chars +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :chars stack depth: 1 +resolving binding `base` in chars +locals: str@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `str` in chars +locals: str@0//0 +at locals position 0 +***match clause: : (:ok, chrs) +binding `chrs` in chars +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: str@0//0|chrs@3//1 +resolving binding `chrs` in chars +locals: str@0//0|chrs@3//1 +at locals position 3 +leaving scope 1 +releasing binding chrs@3//1 +***match clause: : (:err, msg) +binding `msg` in chars +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: str@0//0|msg@3//1 +resolving binding `msg` in chars +locals: str@0//0|msg@3//1 +at locals position 3 +leaving scope 1 +releasing binding msg@3//1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0 +at locals position 0 +binding `chars/safe` in prelude +stack depth: 46; match depth: 0 +at stack index: 45 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0 +***function clause matching: : (str as :string) +binding `str` in chars/safe +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***accessing keyword: base :chars stack depth: 1 +resolving binding `base` in chars/safe +locals: str@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `str` in chars/safe +locals: str@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0 +at locals position 0 +binding `ws?` in prelude +stack depth: 47; match depth: 0 +at stack index: 46 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0 +***function clause matching: : (" ") +***function clause matching: : ("\n") +***function clause matching: : ("\t") +***function clause matching: : (_) +binding `strip` in prelude +stack depth: 48; match depth: 0 +at stack index: 47 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0 +***function clause matching: : ("{x},{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: , +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as enclosing upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : ("{x}.{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: . +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : ("{x};{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: ; +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : ("{x}:{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: : +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : ("{x}?{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: ? +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : ("{x}!{y}") +An interpolated pattern of 3 parts +wordpart: x +datapart: ! +wordpart: y +***calling function strip stack depth: 3 +resolving binding `x` in strip +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in strip +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `strip` in strip +locals: x@1//0|y@2//0 +as upvalue 0 +***after 1 args stack depth: 5 +***function clause matching: : (x) +binding `x` in strip +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in strip +locals: x@0//0 +at locals position 0 +resolving binding `strip` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0 +at locals position 47 +binding `words` in prelude +stack depth: 49; match depth: 0 +at stack index: 48 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +***function clause matching: : (str as :string) +binding `str` in words +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: str@0//0 +***before let binding stack depth: 1 +***calling function strip stack depth: 1 +resolving binding `str` in words +locals: str@0//0 +at locals position 0 +resolving binding `strip` in words +locals: str@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***after let expr stack depth: 2 +***let binding: matching: no_punct +binding `no_punct` in words +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: str@0//0|no_punct@1//1 +***after let binding stack depth: 2 +***before let binding stack depth: 2 +***calling function split stack depth: 2 +resolving binding `no_punct` in words +locals: str@0//0|no_punct@1//1 +at locals position 1 +resolving binding `split` in words +locals: str@0//0|no_punct@1//1 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +***after let expr stack depth: 3 +***let binding: matching: strs +binding `strs` in words +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: str@0//0|no_punct@1//1|strs@2//1 +***after let binding stack depth: 3 +binding `worder` in words +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +***function clause matching: : (l, s) +binding `l` in worder +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: l@0//0 +binding `s` in worder +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: l@0//0|s@1//0 +***calling function empty? stack depth: 2 +resolving binding `s` in worder +locals: l@0//0|s@1//0 +at locals position 1 +resolving binding `empty?` in worder +locals: l@0//0|s@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 4 +***after condition stack depth: 3 +resolving binding `l` in worder +locals: l@0//0|s@1//0 +at locals position 0 +***after consequent stack depth: 3 +***calling function append stack depth: 2 +resolving binding `l` in worder +locals: l@0//0|s@1//0 +at locals position 0 +resolving binding `s` in worder +locals: l@0//0|s@1//0 +at locals position 1 +resolving binding `append` in worder +locals: l@0//0|s@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +***after alternative stack depth: 3 +resolving binding `empty?` in words +locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +as enclosing upvalue 2 +resolving binding `append` in words +locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +as enclosing upvalue 3 +***calling function fold stack depth: 4 +resolving binding `worder` in words +locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +at locals position 3 +resolving binding `strs` in words +locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +at locals position 2 +resolving binding `fold` in words +locals: str@0//0|no_punct@1//1|strs@2//1|worder@3//1 +as enclosing upvalue 4 +***after 3 args stack depth: 8 +leaving scope 1 +releasing binding worder@3//1 +releasing binding strs@2//1 +releasing binding no_punct@1//1 +***leaving block before pop stack depth: 4 +popping back from 4 to 1 +resolving binding `strip` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +at locals position 47 +resolving binding `split` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +at locals position 40 +resolving binding `empty?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +at locals position 21 +resolving binding `append` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +at locals position 25 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0 +at locals position 26 +binding `sentence` in prelude +stack depth: 50; match depth: 0 +at stack index: 49 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0 +***function clause matching: : (strs as :list) +binding `strs` in sentence +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: strs@0//0 +***calling function join stack depth: 1 +resolving binding `strs` in sentence +locals: strs@0//0 +at locals position 0 +resolving binding `join` in sentence +locals: strs@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `join` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0 +at locals position 39 +binding `to_number` in prelude +stack depth: 51; match depth: 0 +at stack index: 50 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0 +***function clause matching: : (num as :string) +binding `num` in to_number +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: num@0//0 +***accessing keyword: base :number stack depth: 1 +resolving binding `base` in to_number +locals: num@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `num` in to_number +locals: num@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0 +at locals position 0 +binding `box?` in prelude +stack depth: 52; match depth: 0 +at stack index: 51 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0 +***function clause matching: : (b as :box) +binding `b` in box? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: b@0//0 +***function clause matching: : (_) +binding `unbox` in prelude +stack depth: 53; match depth: 0 +at stack index: 52 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0 +***function clause matching: : (b as :box) +binding `b` in unbox +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: b@0//0 +***accessing keyword: base :unbox stack depth: 1 +resolving binding `base` in unbox +locals: b@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `b` in unbox +locals: b@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0 +at locals position 0 +binding `store!` in prelude +stack depth: 54; match depth: 0 +at stack index: 53 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0 +***function clause matching: : (b as :box, value) +binding `b` in store! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: b@0//0 +binding `value` in store! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: b@0//0|value@1//0 +***accessing keyword: base :store! stack depth: 2 +resolving binding `base` in store! +locals: b@0//0|value@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `b` in store! +locals: b@0//0|value@1//0 +at locals position 0 +resolving binding `value` in store! +locals: b@0//0|value@1//0 +at locals position 1 +resolving binding `value` in store! +locals: b@0//0|value@1//0 +at locals position 1 +leaving scope 1 +***leaving block before pop stack depth: 2 +popping back from 2 to 2 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0 +at locals position 0 +binding `update!` in prelude +stack depth: 55; match depth: 0 +at stack index: 54 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0 +***function clause matching: : (b as :box, f as :fn) +binding `b` in update! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: b@0//0 +binding `f` in update! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: b@0//0|f@1//0 +***before let binding stack depth: 2 +***calling function unbox stack depth: 2 +resolving binding `b` in update! +locals: b@0//0|f@1//0 +at locals position 0 +resolving binding `unbox` in update! +locals: b@0//0|f@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 4 +***after let expr stack depth: 3 +***let binding: matching: current +binding `current` in update! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: b@0//0|f@1//0|current@2//1 +***after let binding stack depth: 3 +***before let binding stack depth: 3 +***calling function f stack depth: 3 +resolving binding `current` in update! +locals: b@0//0|f@1//0|current@2//1 +at locals position 2 +resolving binding `f` in update! +locals: b@0//0|f@1//0|current@2//1 +at locals position 1 +***after 1 args stack depth: 5 +***after let expr stack depth: 4 +***let binding: matching: new +binding `new` in update! +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: b@0//0|f@1//0|current@2//1|new@3//1 +***after let binding stack depth: 4 +***calling function store! stack depth: 4 +resolving binding `b` in update! +locals: b@0//0|f@1//0|current@2//1|new@3//1 +at locals position 0 +resolving binding `new` in update! +locals: b@0//0|f@1//0|current@2//1|new@3//1 +at locals position 3 +resolving binding `store!` in update! +locals: b@0//0|f@1//0|current@2//1|new@3//1 +as enclosing upvalue 1 +***after 2 args stack depth: 7 +leaving scope 1 +releasing binding new@3//1 +releasing binding current@2//1 +***leaving block before pop stack depth: 4 +popping back from 4 to 2 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0 +at locals position 52 +resolving binding `store!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0 +at locals position 53 +binding `number?` in prelude +stack depth: 56; match depth: 0 +at stack index: 55 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0 +***function clause matching: : (x as :number) +binding `x` in number? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (_) +binding `add` in prelude +stack depth: 57; match depth: 0 +at stack index: 56 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0 +***function clause matching: : () +***function clause matching: : (x as :number) binding `x` in add stack depth: 1; match depth: 0 at stack index: 0 @@ -423,7 +2401,7 @@ new locals: x@0//0 resolving binding `x` in add locals: x@0//0 at locals position 0 -***function clause matching: : (x, y) +***function clause matching: : (x as :number, y as :number) binding `x` in add stack depth: 2; match depth: 1 at stack index: 0 @@ -443,689 +2421,6663 @@ at locals position 0 resolving binding `y` in add locals: x@0//0|y@1//0 at locals position 1 -resolving binding `base` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -at locals position 0 -resolving binding `add` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -at locals position 8 -resolving binding `rest` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -at locals position 3 -resolving binding `first` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -at locals position 2 -resolving binding `eq?` in prelude -locals: base@0//-1|eq?@1//0|first@2//0|rest@3//0|inc@4//0|append@5//0|fold@6//0|contains?@7//0|add@8//0 -at locals position 1 -leaving scope 0 -releasing binding Some(Binding { name: "add", depth: 0, stack_pos: 8 }) -releasing binding Some(Binding { name: "contains?", depth: 0, stack_pos: 7 }) -releasing binding Some(Binding { name: "fold", depth: 0, stack_pos: 6 }) -releasing binding Some(Binding { name: "append", depth: 0, stack_pos: 5 }) -releasing binding Some(Binding { name: "inc", depth: 0, stack_pos: 4 }) -releasing binding Some(Binding { name: "rest", depth: 0, stack_pos: 3 }) -releasing binding Some(Binding { name: "first", depth: 0, stack_pos: 2 }) -releasing binding Some(Binding { name: "eq?", depth: 0, stack_pos: 1 }) -closing over in eq?: #{:trim fn trim/base... -closing over in first: #{:trim fn trim/base... -closing over in rest: #{:trim fn trim/base... -closing over in inc: #{:trim fn trim/base... -closing over in append: #{:trim fn trim/base... -closing over in fold: fn fold -closing over in fold: fn first -closing over in fold: fn rest -closing over in contains?: fn first -closing over in contains?: fn eq? -closing over in contains?: fn rest -closing over in add: #{:trim fn trim/base... -***before let binding stack depth: 0 -***after let expr stack depth: 1 -***let binding: matching: test -binding `test` in sandbox -stack depth: 1; match depth: 0 +***function clause matching: : (x, y, ...zs) +binding `x` in add +stack depth: 3; match depth: 2 at stack index: 0 -new locals: test@0//0 -***after let binding stack depth: 1 -***before let binding stack depth: 1 -***entering loop stack depth: 1 -***after loop args stack depth: 2 -***loop: after store stack depth: 1 -***loop: after load stack depth: 2 -***loop clause matching: : ([]) -***loop: before body stack depth: 2 -***loop: after body, before store stack depth: 3 -***loop: after body, after store stack depth: 2 -leaving scope 1 -***resetting the stack after loop from 2 to 1 stack depth: 2 -***loop: after load stack depth: 2 -***loop clause matching: : ([x]) -binding `x` in sandbox +new locals: x@0//0 +binding `y` in add +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in add stack depth: 3; match depth: 0 at stack index: 2 -new locals: test@0//0|x@2//1 -***loop: before body stack depth: 3 -***calling function eq? stack depth: 3 -resolving binding `x` in sandbox -locals: test@0//0|x@2//1 +new locals: x@0//0|y@1//0|zs@2//0 +***calling function fold stack depth: 3 +resolving binding `add` in add +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in add +locals: x@0//0|y@1//0|zs@2//0 at locals position 2 -resolving binding `test` in sandbox -locals: test@0//0|x@2//1 +***accessing keyword: base :add stack depth: 5 +resolving binding `base` in add +locals: x@0//0|y@1//0|zs@2//0 +as upvalue 0 +***after keyword access stack depth: 6 +resolving binding `x` in add +locals: x@0//0|y@1//0|zs@2//0 at locals position 0 -resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1 -as global -***after 2 args stack depth: 6 -***loop: after body, before store stack depth: 4 -***loop: after body, after store stack depth: 3 -leaving scope 1 -releasing binding Some(Binding { name: "x", depth: 1, stack_pos: 2 }) -***resetting the stack after loop from 3 to 1 stack depth: 3 -***loop: after load stack depth: 2 -***loop clause matching: : ([x, ...xs]) -binding `x` in sandbox +resolving binding `y` in add +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `fold` in add +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***function clause matching: : ((x1, y1), (x2, y2)) +binding `x1` in add stack depth: 4; match depth: 1 at stack index: 2 -new locals: test@0//0|x@2//1 -binding `xs` in sandbox +new locals: x1@2//0 +binding `y1` in add stack depth: 4; match depth: 0 at stack index: 3 -new locals: test@0//0|x@2//1|xs@3//1 -***loop: before body stack depth: 4 -***calling function eq? stack depth: 4 -resolving binding `x` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -at locals position 2 -resolving binding `test` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -at locals position 0 -resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -as global -***after 2 args stack depth: 7 -***after condition stack depth: 5 -***after consequent stack depth: 5 -***recur: before args stack depth: 4 -recur arg: 0 -resolving binding `xs` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -at locals position 3 -***recur: after args stack depth: 5 -***recur: after store stack depth: 4 -loop root depth: 1 -***recur: after stack reset stack depth: 1 -***recur: after load, end of compilation stack depth: 2 -***after alternative stack depth: 2 -***loop: after body, before store stack depth: 2 -***loop: after body, after store stack depth: 1 -leaving scope 1 -releasing binding Some(Binding { name: "xs", depth: 1, stack_pos: 3 }) -releasing binding Some(Binding { name: "x", depth: 1, stack_pos: 2 }) -***resetting the stack after loop from 1 to 1 stack depth: 1 -***before loop arity adjustment stack depth: 2 -***at very end of loop after load stack depth: 2 -***after let expr stack depth: 2 -***let binding: matching: quux -binding `quux` in sandbox -stack depth: 2; match depth: 0 -at stack index: 1 -new locals: test@0//0|quux@1//0 -***after let binding stack depth: 2 -***before let binding stack depth: 2 -***after let expr stack depth: 3 -***let binding: matching: foo -binding `foo` in sandbox -stack depth: 3; match depth: 0 -at stack index: 2 -new locals: test@0//0|quux@1//0|foo@2//0 -***after let binding stack depth: 3 -binding `not` in sandbox -stack depth: 4; match depth: 0 -at stack index: 3 -new locals: test@0//0|quux@1//0|foo@2//0|not@3//0 -***function clause matching: : (false) -***function clause matching: : (nil) -***function clause matching: : (_) -=== function chuncktion: not/1 === -IDX | CODE | INFO -0000: reset_match -0001: ***function clause matching: : (false) -0003: match_depth 000 -0005: match_false -0006: jump_if_no_match 00003 -0009: jump 00000 -0012: jump_if_no_match 00004 -0015: true -0016: store -0017: pop -0018: return -0019: ***function clause matching: : (nil) -0021: match_depth 000 -0023: match_nil -0024: jump_if_no_match 00003 -0027: jump 00000 -0030: jump_if_no_match 00004 -0033: true -0034: store -0035: pop -0036: return -0037: ***function clause matching: : (_) -0039: match_depth 000 -0041: match -0042: jump_if_no_match 00003 -0045: jump 00000 -0048: jump_if_no_match 00004 -0051: false -0052: store -0053: pop -0054: return -0055: panic_no_match -***before let binding stack depth: 4 -***entering loop stack depth: 4 -***after loop args stack depth: 5 -***loop: after store stack depth: 4 -***loop: after load stack depth: 5 -***loop clause matching: : ([]) -***loop: before body stack depth: 5 -***loop: after body, before store stack depth: 6 -***loop: after body, after store stack depth: 5 -leaving scope 1 -***resetting the stack after loop from 5 to 4 stack depth: 5 -***loop: after load stack depth: 5 -***loop clause matching: : ([y]) -binding `y` in sandbox +new locals: x1@2//0|y1@3//0 +binding `x2` in add +stack depth: 6; match depth: 1 +at stack index: 4 +new locals: x1@2//0|y1@3//0|x2@4//0 +binding `y2` in add stack depth: 6; match depth: 0 at stack index: 5 -new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -***loop: before body stack depth: 6 -***calling function eq? stack depth: 6 -resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -at locals position 5 -resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -at locals position 0 -resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -as global +new locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +***calling function add stack depth: 6 +resolving binding `x1` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 2 +resolving binding `x2` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 4 +resolving binding `add` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +as upvalue 1 ***after 2 args stack depth: 9 +***calling function add stack depth: 7 +resolving binding `y1` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 3 +resolving binding `y2` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 5 +resolving binding `add` in add +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +as upvalue 1 +***after 2 args stack depth: 10 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0 +at locals position 0 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0 +at locals position 56 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0 +at locals position 26 +binding `sub` in prelude +stack depth: 58; match depth: 0 +at stack index: 57 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0 +***function clause matching: : () +***function clause matching: : (x as :number) +binding `x` in sub +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in sub +locals: x@0//0 +at locals position 0 +***function clause matching: : (x as :number, y as :number) +binding `x` in sub +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in sub +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :sub stack depth: 2 +resolving binding `base` in sub +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in sub +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in sub +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in sub +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in sub +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in sub +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***calling function fold stack depth: 3 +resolving binding `sub` in sub +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in sub +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***accessing keyword: base :sub stack depth: 5 +resolving binding `base` in sub +locals: x@0//0|y@1//0|zs@2//0 +as upvalue 0 +***after keyword access stack depth: 6 +resolving binding `x` in sub +locals: x@0//0|y@1//0|zs@2//0 +at locals position 0 +resolving binding `y` in sub +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `fold` in sub +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***function clause matching: : ((x1, y1), (x2, y2)) +binding `x1` in sub +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x1@2//0 +binding `y1` in sub +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x1@2//0|y1@3//0 +binding `x2` in sub +stack depth: 6; match depth: 1 +at stack index: 4 +new locals: x1@2//0|y1@3//0|x2@4//0 +binding `y2` in sub +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +***accessing keyword: base :sub stack depth: 6 +resolving binding `base` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +as upvalue 0 +***after keyword access stack depth: 7 +resolving binding `x1` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 2 +resolving binding `x2` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 4 +***accessing keyword: base :sub stack depth: 7 +resolving binding `base` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +as upvalue 0 +***after keyword access stack depth: 8 +resolving binding `y1` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 3 +resolving binding `y2` in sub +locals: x1@2//0|y1@3//0|x2@4//0|y2@5//0 +at locals position 5 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0 +at locals position 0 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0 +at locals position 57 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0 +at locals position 26 +binding `mult` in prelude +stack depth: 59; match depth: 0 +at stack index: 58 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0 +***function clause matching: : () +***function clause matching: : (x as :number) +binding `x` in mult +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in mult +locals: x@0//0 +at locals position 0 +***function clause matching: : (x as :number, y as :number) +binding `x` in mult +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in mult +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :mult stack depth: 2 +resolving binding `base` in mult +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in mult +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in mult +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in mult +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in mult +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in mult +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***calling function fold stack depth: 3 +resolving binding `mult` in mult +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in mult +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***calling function mult stack depth: 5 +resolving binding `x` in mult +locals: x@0//0|y@1//0|zs@2//0 +at locals position 0 +resolving binding `y` in mult +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `mult` in mult +locals: x@0//0|y@1//0|zs@2//0 +as upvalue 1 +***after 2 args stack depth: 8 +resolving binding `fold` in mult +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***function clause matching: : (scalar as :number, (x, y)) +binding `scalar` in mult +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: scalar@0//0 +binding `x` in mult +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: scalar@0//0|x@2//0 +binding `y` in mult +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: scalar@0//0|x@2//0|y@3//0 +***calling function mult stack depth: 4 +resolving binding `x` in mult +locals: scalar@0//0|x@2//0|y@3//0 +at locals position 2 +resolving binding `scalar` in mult +locals: scalar@0//0|x@2//0|y@3//0 +at locals position 0 +resolving binding `mult` in mult +locals: scalar@0//0|x@2//0|y@3//0 +as upvalue 1 +***after 2 args stack depth: 7 +***calling function mult stack depth: 5 +resolving binding `y` in mult +locals: scalar@0//0|x@2//0|y@3//0 +at locals position 3 +resolving binding `scalar` in mult +locals: scalar@0//0|x@2//0|y@3//0 +at locals position 0 +resolving binding `mult` in mult +locals: scalar@0//0|x@2//0|y@3//0 +as upvalue 1 +***after 2 args stack depth: 8 +***function clause matching: : ((x, y), scalar as :number) +binding `x` in mult +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x@2//0 +binding `y` in mult +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@2//0|y@3//0 +binding `scalar` in mult +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: x@2//0|y@3//0|scalar@1//0 +***calling function mult stack depth: 4 +resolving binding `scalar` in mult +locals: x@2//0|y@3//0|scalar@1//0 +at locals position 1 +resolving binding `x` in mult +locals: x@2//0|y@3//0|scalar@1//0 +at locals position 2 +resolving binding `y` in mult +locals: x@2//0|y@3//0|scalar@1//0 +at locals position 3 +resolving binding `mult` in mult +locals: x@2//0|y@3//0|scalar@1//0 +as upvalue 1 +***after 2 args stack depth: 7 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0 +at locals position 0 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0 +at locals position 58 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0 +at locals position 26 +binding `div` in prelude +stack depth: 60; match depth: 0 +at stack index: 59 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0 +***function clause matching: : (x as :number) +binding `x` in div +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in div +locals: x@0//0 +at locals position 0 +***function clause matching: : (_, 0) +***function clause matching: : (x as :number, y as :number) +binding `x` in div +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in div +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :div stack depth: 2 +resolving binding `base` in div +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in div +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in div +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in div +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in div +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in div +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***before let binding stack depth: 3 +***calling function fold stack depth: 3 +resolving binding `mult` in div +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in div +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +resolving binding `y` in div +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `fold` in div +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***after let expr stack depth: 4 +***let binding: matching: divisor +binding `divisor` in div +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +***after let binding stack depth: 4 +***calling function div stack depth: 4 +resolving binding `x` in div +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 0 +resolving binding `divisor` in div +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 3 +resolving binding `div` in div +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +as enclosing upvalue 3 +***after 2 args stack depth: 7 +leaving scope 1 +releasing binding divisor@3//1 +***leaving block before pop stack depth: 4 +popping back from 4 to 3 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0 +at locals position 0 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0 +at locals position 58 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0 +at locals position 26 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0 +at locals position 59 +binding `div/0` in prelude +stack depth: 61; match depth: 0 +at stack index: 60 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0 +***function clause matching: : (x as :number) +binding `x` in div/0 +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in div/0 +locals: x@0//0 +at locals position 0 +***function clause matching: : (_, 0) +***function clause matching: : (x as :number, y as :number) +binding `x` in div/0 +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in div/0 +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :div stack depth: 2 +resolving binding `base` in div/0 +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in div/0 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in div/0 +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in div/0 +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in div/0 +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in div/0 +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***before let binding stack depth: 3 +***calling function fold stack depth: 3 +resolving binding `mult` in div/0 +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in div/0 +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +resolving binding `y` in div/0 +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `fold` in div/0 +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***after let expr stack depth: 4 +***let binding: matching: divisor +binding `divisor` in div/0 +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +***after let binding stack depth: 4 +***calling function div/0 stack depth: 4 +resolving binding `x` in div/0 +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 0 +resolving binding `divisor` in div/0 +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 3 +resolving binding `div/0` in div/0 +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +as enclosing upvalue 3 +***after 2 args stack depth: 7 +leaving scope 1 +releasing binding divisor@3//1 +***leaving block before pop stack depth: 4 +popping back from 4 to 3 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0 +at locals position 0 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0 +at locals position 58 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0 +at locals position 26 +resolving binding `div/0` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0 +at locals position 60 +binding `div/safe` in prelude +stack depth: 62; match depth: 0 +at stack index: 61 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0 +***function clause matching: : (x as :number) +binding `x` in div/safe +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +resolving binding `x` in div/safe +locals: x@0//0 +at locals position 0 +***function clause matching: : (_, 0) +***function clause matching: : (x, y) +binding `x` in div/safe +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in div/safe +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***calling function div stack depth: 3 +resolving binding `x` in div/safe +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in div/safe +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `div` in div/safe +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after 2 args stack depth: 6 +***function clause matching: : (x, y, ...zs) +binding `x` in div/safe +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in div/safe +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in div/safe +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***before let binding stack depth: 3 +***calling function fold stack depth: 3 +resolving binding `mult` in div/safe +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 1 +resolving binding `zs` in div/safe +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +resolving binding `y` in div/safe +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `fold` in div/safe +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 3 args stack depth: 7 +***after let expr stack depth: 4 +***let binding: matching: divisor +binding `divisor` in div/safe +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +***after let binding stack depth: 4 +***calling function div/safe stack depth: 4 +resolving binding `x` in div/safe +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 0 +resolving binding `divisor` in div/safe +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +at locals position 3 +resolving binding `div/safe` in div/safe +locals: x@0//0|y@1//0|zs@2//0|divisor@3//1 +as enclosing upvalue 3 +***after 2 args stack depth: 7 +leaving scope 1 +releasing binding divisor@3//1 +***leaving block before pop stack depth: 4 +popping back from 4 to 3 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0 +at locals position 59 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0 +at locals position 58 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0 +at locals position 26 +resolving binding `div/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0 +at locals position 61 +binding `inv` in prelude +stack depth: 63; match depth: 0 +at stack index: 62 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0 +***function clause matching: : (x as :number) +binding `x` in inv +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function div stack depth: 1 +resolving binding `x` in inv +locals: x@0//0 +at locals position 0 +resolving binding `div` in inv +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0 +at locals position 59 +binding `inv/0` in prelude +stack depth: 64; match depth: 0 +at stack index: 63 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0 +***function clause matching: : (x as :number) +binding `x` in inv/0 +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function div/0 stack depth: 1 +resolving binding `x` in inv/0 +locals: x@0//0 +at locals position 0 +resolving binding `div/0` in inv/0 +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `div/0` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0 +at locals position 60 +binding `inv/safe` in prelude +stack depth: 65; match depth: 0 +at stack index: 64 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0 +***function clause matching: : (x as :number) +binding `x` in inv/safe +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function div/safe stack depth: 1 +resolving binding `x` in inv/safe +locals: x@0//0 +at locals position 0 +resolving binding `div/safe` in inv/safe +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `div/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0 +at locals position 61 +binding `neg` in prelude +stack depth: 66; match depth: 0 +at stack index: 65 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0 +***function clause matching: : (n as :number) +binding `n` in neg +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***calling function mult stack depth: 1 +resolving binding `n` in neg +locals: n@0//0 +at locals position 0 +resolving binding `mult` in neg +locals: n@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0 +at locals position 58 +binding `zero?` in prelude +stack depth: 67; match depth: 0 +at stack index: 66 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0 +***function clause matching: : (0) +***function clause matching: : (_) +binding `gt?` in prelude +stack depth: 68; match depth: 0 +at stack index: 67 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0 +***function clause matching: : (x as :number) +binding `x` in gt? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in gt? +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in gt? +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :gt? stack depth: 2 +resolving binding `base` in gt? +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in gt? +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in gt? +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in gt? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in gt? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in gt? +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***entering loop stack depth: 3 +resolving binding `y` in gt? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `zs` in gt? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***after loop args stack depth: 5 +***loop: after store stack depth: 3 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b]) +binding `a` in gt? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in gt? +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +***loop: before body stack depth: 6 +***accessing keyword: base :gt? stack depth: 6 +resolving binding `base` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 0 +***after keyword access stack depth: 7 +resolving binding `a` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 3 +resolving binding `b` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 5 ***loop: after body, before store stack depth: 7 ***loop: after body, after store stack depth: 6 leaving scope 1 -releasing binding Some(Binding { name: "y", depth: 1, stack_pos: 5 }) -***resetting the stack after loop from 6 to 4 stack depth: 6 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 ***loop: after load stack depth: 5 -***loop clause matching: : ([y, ...ys]) -binding `y` in sandbox +***loop clause matching: : (a, [b, ...cs]) +binding `a` in gt? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in gt? stack depth: 7; match depth: 1 at stack index: 5 -new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -binding `ys` in sandbox +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +binding `cs` in gt? stack depth: 7; match depth: 0 at stack index: 6 -new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 ***loop: before body stack depth: 7 -***calling function not stack depth: 7 -***calling function eq? stack depth: 7 -resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -at locals position 5 -resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -at locals position 0 -resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -as global -***after 2 args stack depth: 10 -resolving binding `not` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 +***accessing keyword: base :gt? stack depth: 7 +resolving binding `base` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +as upvalue 0 +***after keyword access stack depth: 8 +resolving binding `a` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 at locals position 3 -***after 1 args stack depth: 9 +resolving binding `b` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 ***after condition stack depth: 8 ***recur: before args stack depth: 7 recur arg: 0 -resolving binding `ys` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 +resolving binding `b` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +recur arg: 1 +resolving binding `cs` in gt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 at locals position 6 -***recur: after args stack depth: 8 +***recur: after args stack depth: 9 ***recur: after store stack depth: 7 -loop root depth: 4 -***recur: after stack reset stack depth: 4 +loop root depth: 3 +***recur: after stack reset stack depth: 3 ***recur: after load, end of compilation stack depth: 5 ***after consequent stack depth: 5 ***after alternative stack depth: 5 ***loop: after body, before store stack depth: 5 ***loop: after body, after store stack depth: 4 leaving scope 1 -releasing binding Some(Binding { name: "ys", depth: 1, stack_pos: 6 }) -releasing binding Some(Binding { name: "y", depth: 1, stack_pos: 5 }) -***resetting the stack after loop from 4 to 4 stack depth: 4 +releasing binding cs@6//1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 4 to 3 stack depth: 4 ***before loop arity adjustment stack depth: 5 -***at very end of loop after load stack depth: 5 -***after let expr stack depth: 5 -***let binding: matching: frob -binding `frob` in sandbox +***at very end of loop after load stack depth: 4 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0 +at locals position 0 +binding `gte?` in prelude +stack depth: 69; match depth: 0 +at stack index: 68 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0 +***function clause matching: : (x as :number) +binding `x` in gte? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in gte? +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in gte? +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :gte? stack depth: 2 +resolving binding `base` in gte? +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in gte? +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in gte? +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in gte? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in gte? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in gte? +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***entering loop stack depth: 3 +resolving binding `y` in gte? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `zs` in gte? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***after loop args stack depth: 5 +***loop: after store stack depth: 3 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b]) +binding `a` in gte? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in gte? +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +***loop: before body stack depth: 6 +***accessing keyword: base :gte? stack depth: 6 +resolving binding `base` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 0 +***after keyword access stack depth: 7 +resolving binding `a` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 3 +resolving binding `b` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 5 +***loop: after body, before store stack depth: 7 +***loop: after body, after store stack depth: 6 +leaving scope 1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b, ...cs]) +binding `a` in gte? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in gte? +stack depth: 7; match depth: 1 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +binding `cs` in gte? +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +***loop: before body stack depth: 7 +***accessing keyword: base :gte? stack depth: 7 +resolving binding `base` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +as upvalue 0 +***after keyword access stack depth: 8 +resolving binding `a` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 3 +resolving binding `b` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +***after condition stack depth: 8 +***recur: before args stack depth: 7 +recur arg: 0 +resolving binding `b` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +recur arg: 1 +resolving binding `cs` in gte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 6 +***recur: after args stack depth: 9 +***recur: after store stack depth: 7 +loop root depth: 3 +***recur: after stack reset stack depth: 3 +***recur: after load, end of compilation stack depth: 5 +***after consequent stack depth: 5 +***after alternative stack depth: 5 +***loop: after body, before store stack depth: 5 +***loop: after body, after store stack depth: 4 +leaving scope 1 +releasing binding cs@6//1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 4 to 3 stack depth: 4 +***before loop arity adjustment stack depth: 5 +***at very end of loop after load stack depth: 4 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0 +at locals position 0 +binding `lt?` in prelude +stack depth: 70; match depth: 0 +at stack index: 69 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0 +***function clause matching: : (x as :number) +binding `x` in lt? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in lt? +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in lt? +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :lt? stack depth: 2 +resolving binding `base` in lt? +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in lt? +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in lt? +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in lt? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in lt? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in lt? +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***entering loop stack depth: 3 +resolving binding `y` in lt? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `zs` in lt? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***after loop args stack depth: 5 +***loop: after store stack depth: 3 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b]) +binding `a` in lt? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in lt? +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +***loop: before body stack depth: 6 +***accessing keyword: base :lt? stack depth: 6 +resolving binding `base` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 0 +***after keyword access stack depth: 7 +resolving binding `a` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 3 +resolving binding `b` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 5 +***loop: after body, before store stack depth: 7 +***loop: after body, after store stack depth: 6 +leaving scope 1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b, ...cs]) +binding `a` in lt? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in lt? +stack depth: 7; match depth: 1 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +binding `cs` in lt? +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +***loop: before body stack depth: 7 +***accessing keyword: base :lt? stack depth: 7 +resolving binding `base` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +as upvalue 0 +***after keyword access stack depth: 8 +resolving binding `a` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 3 +resolving binding `b` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +***after condition stack depth: 8 +***recur: before args stack depth: 7 +recur arg: 0 +resolving binding `b` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +recur arg: 1 +resolving binding `cs` in lt? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 6 +***recur: after args stack depth: 9 +***recur: after store stack depth: 7 +loop root depth: 3 +***recur: after stack reset stack depth: 3 +***recur: after load, end of compilation stack depth: 5 +***after consequent stack depth: 5 +***after alternative stack depth: 5 +***loop: after body, before store stack depth: 5 +***loop: after body, after store stack depth: 4 +leaving scope 1 +releasing binding cs@6//1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 4 to 3 stack depth: 4 +***before loop arity adjustment stack depth: 5 +***at very end of loop after load stack depth: 4 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0 +at locals position 0 +binding `lte?` in prelude +stack depth: 71; match depth: 0 +at stack index: 70 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0 +***function clause matching: : (x as :number) +binding `x` in lte? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in lte? +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in lte? +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :lte? stack depth: 2 +resolving binding `base` in lte? +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in lte? +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in lte? +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, ...zs) +binding `x` in lte? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in lte? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in lte? +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***entering loop stack depth: 3 +resolving binding `y` in lte? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `zs` in lte? +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***after loop args stack depth: 5 +***loop: after store stack depth: 3 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b]) +binding `a` in lte? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in lte? +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +***loop: before body stack depth: 6 +***accessing keyword: base :lte? stack depth: 6 +resolving binding `base` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +as upvalue 0 +***after keyword access stack depth: 7 +resolving binding `a` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 3 +resolving binding `b` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +at locals position 5 +***loop: after body, before store stack depth: 7 +***loop: after body, after store stack depth: 6 +leaving scope 1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 6 to 3 stack depth: 6 +***loop: after load stack depth: 5 +***loop clause matching: : (a, [b, ...cs]) +binding `a` in lte? +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1 +binding `b` in lte? +stack depth: 7; match depth: 1 +at stack index: 5 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1 +binding `cs` in lte? +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +***loop: before body stack depth: 7 +***accessing keyword: base :lte? stack depth: 7 +resolving binding `base` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +as upvalue 0 +***after keyword access stack depth: 8 +resolving binding `a` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 3 +resolving binding `b` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +***after condition stack depth: 8 +***recur: before args stack depth: 7 +recur arg: 0 +resolving binding `b` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 5 +recur arg: 1 +resolving binding `cs` in lte? +locals: x@0//0|y@1//0|zs@2//0|a@3//1|b@5//1|cs@6//1 +at locals position 6 +***recur: after args stack depth: 9 +***recur: after store stack depth: 7 +loop root depth: 3 +***recur: after stack reset stack depth: 3 +***recur: after load, end of compilation stack depth: 5 +***after consequent stack depth: 5 +***after alternative stack depth: 5 +***loop: after body, before store stack depth: 5 +***loop: after body, after store stack depth: 4 +leaving scope 1 +releasing binding cs@6//1 +releasing binding b@5//1 +releasing binding a@3//1 +***resetting the stack after loop from 4 to 3 stack depth: 4 +***before loop arity adjustment stack depth: 5 +***at very end of loop after load stack depth: 4 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0 +at locals position 0 +binding `between?` in prelude +stack depth: 72; match depth: 0 +at stack index: 71 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0 +***function clause matching: : (lower as :number, higher as :number, x as :number) +binding `lower` in between? +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: lower@0//0 +binding `higher` in between? +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: lower@0//0|higher@1//0 +binding `x` in between? +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: lower@0//0|higher@1//0|x@2//0 +***calling function gte? stack depth: 3 +resolving binding `x` in between? +locals: lower@0//0|higher@1//0|x@2//0 +at locals position 2 +resolving binding `lower` in between? +locals: lower@0//0|higher@1//0|x@2//0 +at locals position 0 +resolving binding `gte?` in between? +locals: lower@0//0|higher@1//0|x@2//0 +as enclosing upvalue 0 +***after 2 args stack depth: 6 +***calling function lt? stack depth: 3 +resolving binding `x` in between? +locals: lower@0//0|higher@1//0|x@2//0 +at locals position 2 +resolving binding `higher` in between? +locals: lower@0//0|higher@1//0|x@2//0 +at locals position 1 +resolving binding `lt?` in between? +locals: lower@0//0|higher@1//0|x@2//0 +as enclosing upvalue 1 +***after 2 args stack depth: 6 +resolving binding `gte?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0 +at locals position 68 +resolving binding `lt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0 +at locals position 69 +binding `neg?` in prelude +stack depth: 73; match depth: 0 +at stack index: 72 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0 +***function clause matching: : (x as :number) +binding `x` in neg? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function lt? stack depth: 1 +resolving binding `x` in neg? +locals: x@0//0 +at locals position 0 +resolving binding `lt?` in neg? +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +***function clause matching: : (_) +resolving binding `lt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0 +at locals position 69 +binding `pos?` in prelude +stack depth: 74; match depth: 0 +at stack index: 73 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0 +***function clause matching: : (x as :number) +binding `x` in pos? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function gt? stack depth: 1 +resolving binding `x` in pos? +locals: x@0//0 +at locals position 0 +resolving binding `gt?` in pos? +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +***function clause matching: : (_) +resolving binding `gt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0 +at locals position 67 +binding `abs` in prelude +stack depth: 75; match depth: 0 +at stack index: 74 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0 +***function clause matching: : (0) +***function clause matching: : (n as :number) +binding `n` in abs +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***calling function neg? stack depth: 1 +resolving binding `n` in abs +locals: n@0//0 +at locals position 0 +resolving binding `neg?` in abs +locals: n@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***after condition stack depth: 2 +***calling function mult stack depth: 1 +resolving binding `n` in abs +locals: n@0//0 +at locals position 0 +resolving binding `mult` in abs +locals: n@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +***after consequent stack depth: 2 +resolving binding `n` in abs +locals: n@0//0 +at locals position 0 +***after alternative stack depth: 2 +resolving binding `neg?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0 +at locals position 72 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0 +at locals position 58 +***before let binding stack depth: 75 +***accessing keyword: base :pi stack depth: 75 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0 +at locals position 0 +***after keyword access stack depth: 76 +***after let expr stack depth: 76 +***let binding: matching: pi +binding `pi` in prelude +stack depth: 76; match depth: 0 +at stack index: 75 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0 +***after let binding stack depth: 76 +***before let binding stack depth: 76 +***calling function mult stack depth: 76 +resolving binding `pi` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0 +at locals position 75 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0 +at locals position 58 +***after 2 args stack depth: 79 +***after let expr stack depth: 77 +***let binding: matching: tau +binding `tau` in prelude +stack depth: 77; match depth: 0 +at stack index: 76 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0 +***after let binding stack depth: 77 +binding `turn/deg` in prelude +stack depth: 78; match depth: 0 +at stack index: 77 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0 +***function clause matching: : (a as :number) +binding `a` in turn/deg +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function mult stack depth: 1 +resolving binding `a` in turn/deg +locals: a@0//0 +at locals position 0 +resolving binding `mult` in turn/deg +locals: a@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0 +at locals position 58 +binding `deg/turn` in prelude +stack depth: 79; match depth: 0 +at stack index: 78 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0 +***function clause matching: : (a as :number) +binding `a` in deg/turn +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function div stack depth: 1 +resolving binding `a` in deg/turn +locals: a@0//0 +at locals position 0 +resolving binding `div` in deg/turn +locals: a@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0 +at locals position 59 +binding `turn/rad` in prelude +stack depth: 80; match depth: 0 +at stack index: 79 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0 +***function clause matching: : (a as :number) +binding `a` in turn/rad +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function mult stack depth: 1 +resolving binding `a` in turn/rad +locals: a@0//0 +at locals position 0 +resolving binding `tau` in turn/rad +locals: a@0//0 +as enclosing upvalue 0 +resolving binding `mult` in turn/rad +locals: a@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +resolving binding `tau` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0 +at locals position 76 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0 +at locals position 58 +binding `rad/turn` in prelude +stack depth: 81; match depth: 0 +at stack index: 80 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0 +***function clause matching: : (a as :number) +binding `a` in rad/turn +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function div stack depth: 1 +resolving binding `a` in rad/turn +locals: a@0//0 +at locals position 0 +resolving binding `tau` in rad/turn +locals: a@0//0 +as enclosing upvalue 0 +resolving binding `div` in rad/turn +locals: a@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +resolving binding `tau` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0 +at locals position 76 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0 +at locals position 59 +binding `deg/rad` in prelude +stack depth: 82; match depth: 0 +at stack index: 81 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0 +***function clause matching: : (a as :number) +binding `a` in deg/rad +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function mult stack depth: 1 +resolving binding `tau` in deg/rad +locals: a@0//0 +as enclosing upvalue 0 +***calling function div stack depth: 2 +resolving binding `a` in deg/rad +locals: a@0//0 +at locals position 0 +resolving binding `div` in deg/rad +locals: a@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `mult` in deg/rad +locals: a@0//0 +as enclosing upvalue 2 +***after 2 args stack depth: 4 +resolving binding `tau` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0 +at locals position 76 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0 +at locals position 59 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0 +at locals position 58 +binding `rad/deg` in prelude +stack depth: 83; match depth: 0 +at stack index: 82 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0 +***function clause matching: : (a as :number) +binding `a` in rad/deg +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +***calling function mult stack depth: 1 +***calling function div stack depth: 2 +resolving binding `a` in rad/deg +locals: a@0//0 +at locals position 0 +resolving binding `tau` in rad/deg +locals: a@0//0 +as enclosing upvalue 0 +resolving binding `div` in rad/deg +locals: a@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `mult` in rad/deg +locals: a@0//0 +as enclosing upvalue 2 +***after 2 args stack depth: 4 +resolving binding `tau` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0 +at locals position 76 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0 +at locals position 59 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0 +at locals position 58 +binding `sin` in prelude +stack depth: 84; match depth: 0 +at stack index: 83 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0 +***function clause matching: : (a as :number) +binding `a` in sin +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in sin +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in sin +locals: a@0//0 +as enclosing upvalue 0 +***accessing keyword: base :sin stack depth: 2 +resolving binding `base` in sin +locals: a@0//0 +as enclosing upvalue 1 +***after keyword access stack depth: 3 +***function clause matching: : (a as :number, :turns) +binding `a` in sin +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in sin +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in sin +locals: a@0//0 +as upvalue 0 +***accessing keyword: base :sin stack depth: 3 +resolving binding `base` in sin +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :degrees) +binding `a` in sin +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in sin +locals: a@0//0 +at locals position 0 +resolving binding `deg/rad` in sin +locals: a@0//0 +as enclosing upvalue 2 +***accessing keyword: base :sin stack depth: 3 +resolving binding `base` in sin +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :radians) +binding `a` in sin +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +***accessing keyword: base :sin stack depth: 2 +resolving binding `base` in sin +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 3 +resolving binding `a` in sin +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0 +at locals position 79 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0 +at locals position 0 +resolving binding `deg/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0 +at locals position 81 +binding `cos` in prelude +stack depth: 85; match depth: 0 +at stack index: 84 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0 +***function clause matching: : (a as :number) +binding `a` in cos +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in cos +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in cos +locals: a@0//0 +as enclosing upvalue 0 +***accessing keyword: base :cos stack depth: 2 +resolving binding `base` in cos +locals: a@0//0 +as enclosing upvalue 1 +***after keyword access stack depth: 3 +***function clause matching: : (a as :number, :turns) +binding `a` in cos +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in cos +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in cos +locals: a@0//0 +as upvalue 0 +***accessing keyword: base :cos stack depth: 3 +resolving binding `base` in cos +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :degrees) +binding `a` in cos +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in cos +locals: a@0//0 +at locals position 0 +resolving binding `deg/rad` in cos +locals: a@0//0 +as enclosing upvalue 2 +***accessing keyword: base :cos stack depth: 3 +resolving binding `base` in cos +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :radians) +binding `a` in cos +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +***accessing keyword: base :cos stack depth: 2 +resolving binding `base` in cos +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 3 +resolving binding `a` in cos +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0 +at locals position 79 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0 +at locals position 0 +resolving binding `deg/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0 +at locals position 81 +binding `tan` in prelude +stack depth: 86; match depth: 0 +at stack index: 85 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0 +***function clause matching: : (a as :number) +binding `a` in tan +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in tan +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in tan +locals: a@0//0 +as enclosing upvalue 0 +***accessing keyword: base :tan stack depth: 2 +resolving binding `base` in tan +locals: a@0//0 +as enclosing upvalue 1 +***after keyword access stack depth: 3 +***function clause matching: : (a as :number, :turns) +binding `a` in tan +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in tan +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in tan +locals: a@0//0 +as upvalue 0 +***accessing keyword: base :tan stack depth: 3 +resolving binding `base` in tan +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :degrees) +binding `a` in tan +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +resolving binding `a` in tan +locals: a@0//0 +at locals position 0 +resolving binding `deg/rad` in tan +locals: a@0//0 +as enclosing upvalue 2 +***accessing keyword: base :tan stack depth: 3 +resolving binding `base` in tan +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 4 +***function clause matching: : (a as :number, :radians) +binding `a` in tan +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: a@0//0 +***accessing keyword: base :tan stack depth: 2 +resolving binding `base` in tan +locals: a@0//0 +as upvalue 1 +***after keyword access stack depth: 3 +resolving binding `a` in tan +locals: a@0//0 +at locals position 0 +resolving binding `turn/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0 +at locals position 79 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0 +at locals position 0 +resolving binding `deg/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0 +at locals position 81 +binding `rotate` in prelude +stack depth: 87; match depth: 0 +at stack index: 86 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +***function clause matching: : ((x, y), a) +binding `x` in rotate +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x@2//0 +binding `y` in rotate +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@2//0|y@3//0 +binding `a` in rotate +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: x@2//0|y@3//0|a@1//0 +***calling function rotate stack depth: 4 +resolving binding `x` in rotate +locals: x@2//0|y@3//0|a@1//0 +at locals position 2 +resolving binding `y` in rotate +locals: x@2//0|y@3//0|a@1//0 +at locals position 3 +resolving binding `a` in rotate +locals: x@2//0|y@3//0|a@1//0 +at locals position 1 +resolving binding `rotate` in rotate +locals: x@2//0|y@3//0|a@1//0 +as enclosing upvalue 0 +***after 3 args stack depth: 8 +***function clause matching: : ((x, y), a, units as :keyword) +binding `x` in rotate +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: x@3//0 +binding `y` in rotate stack depth: 5; match depth: 0 at stack index: 4 -new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -***after let binding stack depth: 5 -resolving binding `quux` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 +new locals: x@3//0|y@4//0 +binding `a` in rotate +stack depth: 5; match depth: 3 +at stack index: 1 +new locals: x@3//0|y@4//0|a@1//0 +binding `units` in rotate +stack depth: 5; match depth: 2 +at stack index: 2 +new locals: x@3//0|y@4//0|a@1//0|units@2//0 +***calling function sub stack depth: 5 +***calling function mult stack depth: 5 +resolving binding `x` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 3 +***calling function cos stack depth: 6 +resolving binding `a` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 at locals position 1 -resolving binding `frob` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 +resolving binding `units` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 2 +resolving binding `cos` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as enclosing upvalue 1 +***after 2 args stack depth: 9 +resolving binding `mult` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as enclosing upvalue 2 +***after 2 args stack depth: 8 +***calling function mult stack depth: 6 +resolving binding `y` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 at locals position 4 +***calling function sin stack depth: 7 +resolving binding `a` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 1 +resolving binding `units` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 2 +resolving binding `sin` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as enclosing upvalue 3 +***after 2 args stack depth: 10 +resolving binding `mult` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as upvalue 2 +***after 2 args stack depth: 9 +resolving binding `sub` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as enclosing upvalue 4 +***after 2 args stack depth: 8 +***calling function add stack depth: 6 +***calling function mult stack depth: 6 +resolving binding `x` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 3 +***calling function sin stack depth: 7 +resolving binding `a` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 1 +resolving binding `units` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 2 +resolving binding `sin` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as upvalue 3 +***after 2 args stack depth: 10 +resolving binding `mult` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as upvalue 2 +***after 2 args stack depth: 9 +***calling function mult stack depth: 7 +resolving binding `y` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 4 +***calling function cos stack depth: 8 +resolving binding `a` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 1 +resolving binding `units` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +at locals position 2 +resolving binding `cos` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as upvalue 1 +***after 2 args stack depth: 11 +resolving binding `mult` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as upvalue 2 +***after 2 args stack depth: 10 +resolving binding `add` in rotate +locals: x@3//0|y@4//0|a@1//0|units@2//0 +as enclosing upvalue 5 +***after 2 args stack depth: 9 +resolving binding `rotate` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 86 +resolving binding `cos` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 84 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 58 +resolving binding `sin` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 83 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 57 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0 +at locals position 56 +binding `atan/2` in prelude +stack depth: 88; match depth: 0 +at stack index: 87 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in atan/2 +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in atan/2 +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :atan_2 stack depth: 2 +resolving binding `base` in atan/2 +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in atan/2 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in atan/2 +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `rad/turn` in atan/2 +locals: x@0//0|y@1//0 +as enclosing upvalue 1 +***function clause matching: : (x, y, :turns) +binding `x` in atan/2 +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in atan/2 +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +***calling function atan/2 stack depth: 3 +resolving binding `x` in atan/2 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in atan/2 +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `atan/2` in atan/2 +locals: x@0//0|y@1//0 +as enclosing upvalue 2 +***after 2 args stack depth: 6 +***function clause matching: : (x, y, :radians) +binding `x` in atan/2 +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in atan/2 +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :atan_2 stack depth: 3 +resolving binding `base` in atan/2 +locals: x@0//0|y@1//0 +as upvalue 0 +***after keyword access stack depth: 4 +resolving binding `x` in atan/2 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in atan/2 +locals: x@0//0|y@1//0 +at locals position 1 +***function clause matching: : (x, y, :degrees) +binding `x` in atan/2 +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in atan/2 +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :atan_2 stack depth: 3 +resolving binding `base` in atan/2 +locals: x@0//0|y@1//0 +as upvalue 0 +***after keyword access stack depth: 4 +resolving binding `x` in atan/2 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in atan/2 +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `rad/deg` in atan/2 +locals: x@0//0|y@1//0 +as enclosing upvalue 3 +***function clause matching: : ((x, y)) +binding `x` in atan/2 +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@1//0 +binding `y` in atan/2 +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@1//0|y@2//0 +***calling function atan/2 stack depth: 3 +resolving binding `x` in atan/2 +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in atan/2 +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `atan/2` in atan/2 +locals: x@1//0|y@2//0 +as upvalue 2 +***after 2 args stack depth: 6 +***function clause matching: : ((x, y), units as :keyword) +binding `x` in atan/2 +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: x@2//0 +binding `y` in atan/2 +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: x@2//0|y@3//0 +binding `units` in atan/2 +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: x@2//0|y@3//0|units@1//0 +***calling function atan/2 stack depth: 4 +resolving binding `x` in atan/2 +locals: x@2//0|y@3//0|units@1//0 +at locals position 2 +resolving binding `y` in atan/2 +locals: x@2//0|y@3//0|units@1//0 +at locals position 3 +resolving binding `units` in atan/2 +locals: x@2//0|y@3//0|units@1//0 +at locals position 1 +resolving binding `atan/2` in atan/2 +locals: x@2//0|y@3//0|units@1//0 +as upvalue 2 +***after 3 args stack depth: 8 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0 +at locals position 0 +resolving binding `rad/turn` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0 +at locals position 80 +resolving binding `atan/2` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0 +at locals position 87 +resolving binding `rad/deg` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0 +at locals position 82 +binding `angle` in prelude +stack depth: 89; match depth: 0 +at stack index: 88 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0 +***function clause matching: : (v1, v2) +binding `v1` in angle +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: v1@0//0 +binding `v2` in angle +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: v1@0//0|v2@1//0 +***calling function sub stack depth: 2 +***calling function atan/2 stack depth: 2 +resolving binding `v2` in angle +locals: v1@0//0|v2@1//0 +at locals position 1 +resolving binding `atan/2` in angle +locals: v1@0//0|v2@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 4 +***calling function atan/2 stack depth: 3 +resolving binding `v1` in angle +locals: v1@0//0|v2@1//0 +at locals position 0 +resolving binding `atan/2` in angle +locals: v1@0//0|v2@1//0 +as upvalue 0 +***after 1 args stack depth: 5 +resolving binding `sub` in angle +locals: v1@0//0|v2@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `atan/2` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0 +at locals position 87 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0 +at locals position 57 +binding `mod` in prelude +stack depth: 90; match depth: 0 +at stack index: 89 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0 +***function clause matching: : (x as :number, 0) +binding `x` in mod +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in mod +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in mod +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :mod stack depth: 2 +resolving binding `base` in mod +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in mod +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in mod +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0 +at locals position 0 +binding `mod/0` in prelude +stack depth: 91; match depth: 0 +at stack index: 90 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0 +***function clause matching: : (x as :number, 0) +binding `x` in mod/0 +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in mod/0 +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in mod/0 +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :mod stack depth: 2 +resolving binding `base` in mod/0 +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `x` in mod/0 +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in mod/0 +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0 +at locals position 0 +binding `mod/safe` in prelude +stack depth: 92; match depth: 0 +at stack index: 91 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0 +***function clause matching: : (x as :number, 0) +binding `x` in mod/safe +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in mod/safe +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in mod/safe +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***accessing keyword: base :mod stack depth: 3 +resolving binding `base` in mod/safe +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 4 +resolving binding `x` in mod/safe +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in mod/safe +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0 +at locals position 0 +binding `even?` in prelude +stack depth: 93; match depth: 0 +at stack index: 92 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0 +***function clause matching: : (x as :number) +binding `x` in even? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function eq? stack depth: 1 +***calling function mod stack depth: 2 +resolving binding `x` in even? +locals: x@0//0 +at locals position 0 +resolving binding `mod` in even? +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 5 +resolving binding `eq?` in even? +locals: x@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +***function clause matching: : (_) +resolving binding `mod` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0 +at locals position 89 +resolving binding `eq?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0 +at locals position 8 +binding `odd?` in prelude +stack depth: 94; match depth: 0 +at stack index: 93 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0 +***function clause matching: : (x as :number) +binding `x` in odd? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function eq? stack depth: 1 +***calling function mod stack depth: 2 +resolving binding `x` in odd? +locals: x@0//0 +at locals position 0 +resolving binding `mod` in odd? +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 5 +resolving binding `eq?` in odd? +locals: x@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +***function clause matching: : (_) +resolving binding `mod` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0 +at locals position 89 +resolving binding `eq?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0 +at locals position 8 +binding `square` in prelude +stack depth: 95; match depth: 0 +at stack index: 94 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0 +***function clause matching: : (x as :number) +binding `x` in square +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function mult stack depth: 1 +resolving binding `x` in square +locals: x@0//0 +at locals position 0 +resolving binding `x` in square +locals: x@0//0 +at locals position 0 +resolving binding `mult` in square +locals: x@0//0 +as enclosing upvalue 0 +***after 2 args stack depth: 4 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0 +at locals position 58 +binding `sqrt` in prelude +stack depth: 96; match depth: 0 +at stack index: 95 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0 +***function clause matching: : (x as :number) +binding `x` in sqrt +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function not stack depth: 1 +***calling function neg? stack depth: 1 +resolving binding `x` in sqrt +locals: x@0//0 +at locals position 0 +resolving binding `neg?` in sqrt +locals: x@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `not` in sqrt +locals: x@0//0 +as enclosing upvalue 1 +***after 1 args stack depth: 3 +***accessing keyword: base :sqrt stack depth: 0 +resolving binding `base` in sqrt +locals: x@0//0 +as enclosing upvalue 2 +***after keyword access stack depth: 1 +resolving binding `x` in sqrt +locals: x@0//0 +at locals position 0 +resolving binding `neg?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0 +at locals position 72 +resolving binding `not` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0 +at locals position 13 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0 +at locals position 0 +binding `sqrt/safe` in prelude +stack depth: 97; match depth: 0 +at stack index: 96 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0 +***function clause matching: : (x as :number) +binding `x` in sqrt/safe +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function not stack depth: 1 +***calling function neg? stack depth: 1 +resolving binding `x` in sqrt/safe +locals: x@0//0 +at locals position 0 +resolving binding `neg?` in sqrt/safe +locals: x@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `not` in sqrt/safe +locals: x@0//0 +as enclosing upvalue 1 +***after 1 args stack depth: 3 +***after condition stack depth: 2 +***accessing keyword: base :sqrt stack depth: 2 +resolving binding `base` in sqrt/safe +locals: x@0//0 +as enclosing upvalue 2 +***after keyword access stack depth: 3 +resolving binding `x` in sqrt/safe +locals: x@0//0 +at locals position 0 +***after consequent stack depth: 2 +***after alternative stack depth: 2 +resolving binding `neg?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0 +at locals position 72 +resolving binding `not` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0 +at locals position 13 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0 +at locals position 0 +binding `sum_of_squares` in prelude +stack depth: 98; match depth: 0 +at stack index: 97 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0 +***function clause matching: : () +***function clause matching: : (x as :number) +binding `x` in sum_of_squares +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: x@0//0 +***calling function square stack depth: 1 +resolving binding `x` in sum_of_squares +locals: x@0//0 +at locals position 0 +resolving binding `square` in sum_of_squares +locals: x@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : (x as :number, y as :number) +binding `x` in sum_of_squares +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in sum_of_squares +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***calling function add stack depth: 2 +***calling function square stack depth: 2 +resolving binding `x` in sum_of_squares +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `square` in sum_of_squares +locals: x@0//0|y@1//0 +as upvalue 0 +***after 1 args stack depth: 4 +***calling function square stack depth: 3 +resolving binding `y` in sum_of_squares +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `square` in sum_of_squares +locals: x@0//0|y@1//0 +as upvalue 0 +***after 1 args stack depth: 5 +resolving binding `add` in sum_of_squares +locals: x@0//0|y@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +***function clause matching: : (x, y, ...zs) +binding `x` in sum_of_squares +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: x@0//0 +binding `y` in sum_of_squares +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@0//0|y@1//0 +binding `zs` in sum_of_squares +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@0//0|y@1//0|zs@2//0 +***calling function fold stack depth: 3 +***function clause matching: : (sum, z) +binding `sum` in _anon +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: sum@0//0 +binding `z` in _anon +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: sum@0//0|z@1//0 +***calling function add stack depth: 2 +resolving binding `sum` in _anon +locals: sum@0//0|z@1//0 +at locals position 0 +***calling function square stack depth: 3 +resolving binding `z` in _anon +locals: sum@0//0|z@1//0 +at locals position 1 +resolving binding `square` in _anon +locals: sum@0//0|z@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 5 +resolving binding `add` in _anon +locals: sum@0//0|z@1//0 +as enclosing upvalue 1 +***after 2 args stack depth: 5 +resolving binding `square` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +as upvalue 0 +resolving binding `add` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +as upvalue 1 +resolving binding `zs` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +at locals position 2 +***calling function sum_of_squares stack depth: 5 +resolving binding `x` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +at locals position 0 +resolving binding `y` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +at locals position 1 +resolving binding `sum_of_squares` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 2 +***after 2 args stack depth: 8 +resolving binding `fold` in sum_of_squares +locals: x@0//0|y@1//0|zs@2//0 +as enclosing upvalue 3 +***after 3 args stack depth: 7 +resolving binding `square` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0 +at locals position 94 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0 +at locals position 56 +resolving binding `sum_of_squares` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0 +at locals position 97 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0 +at locals position 26 +binding `dist` in prelude +stack depth: 99; match depth: 0 +at stack index: 98 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in dist +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in dist +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***calling function sqrt stack depth: 2 +***calling function sum_of_squares stack depth: 2 +resolving binding `x` in dist +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in dist +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `sum_of_squares` in dist +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after 2 args stack depth: 5 +resolving binding `sqrt` in dist +locals: x@0//0|y@1//0 +as enclosing upvalue 1 +***after 1 args stack depth: 4 +***function clause matching: : ((x, y)) +binding `x` in dist +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@1//0 +binding `y` in dist +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@1//0|y@2//0 +***calling function dist stack depth: 3 +resolving binding `x` in dist +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in dist +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `dist` in dist +locals: x@1//0|y@2//0 +as enclosing upvalue 2 +***after 2 args stack depth: 6 +resolving binding `sum_of_squares` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0 +at locals position 97 +resolving binding `sqrt` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0 +at locals position 95 +resolving binding `dist` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0 +at locals position 98 +binding `heading/vector` in prelude +stack depth: 100; match depth: 0 +at stack index: 99 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0 +***function clause matching: : (heading) +binding `heading` in heading/vector +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: heading@0//0 +***before let binding stack depth: 1 +***calling function add stack depth: 1 +***calling function neg stack depth: 1 +resolving binding `heading` in heading/vector +locals: heading@0//0 +at locals position 0 +resolving binding `neg` in heading/vector +locals: heading@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add` in heading/vector +locals: heading@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +***after let expr stack depth: 2 +***let binding: matching: a +binding `a` in heading/vector +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: heading@0//0|a@1//1 +***after let binding stack depth: 2 +***calling function cos stack depth: 2 +resolving binding `a` in heading/vector +locals: heading@0//0|a@1//1 +at locals position 1 +resolving binding `cos` in heading/vector +locals: heading@0//0|a@1//1 +as enclosing upvalue 2 +***after 1 args stack depth: 4 +***calling function sin stack depth: 3 +resolving binding `a` in heading/vector +locals: heading@0//0|a@1//1 +at locals position 1 +resolving binding `sin` in heading/vector +locals: heading@0//0|a@1//1 +as enclosing upvalue 3 +***after 1 args stack depth: 5 +leaving scope 1 +releasing binding a@1//1 +***leaving block before pop stack depth: 2 +popping back from 2 to 1 +resolving binding `neg` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0 +at locals position 65 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0 +at locals position 56 +resolving binding `cos` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0 +at locals position 84 +resolving binding `sin` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0 +at locals position 83 +binding `floor` in prelude +stack depth: 101; match depth: 0 +at stack index: 100 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0 +***function clause matching: : (n as :number) +binding `n` in floor +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***accessing keyword: base :floor stack depth: 1 +resolving binding `base` in floor +locals: n@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `n` in floor +locals: n@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0 +at locals position 0 +binding `ceil` in prelude +stack depth: 102; match depth: 0 +at stack index: 101 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0 +***function clause matching: : (n as :number) +binding `n` in ceil +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***accessing keyword: base :ceil stack depth: 1 +resolving binding `base` in ceil +locals: n@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `n` in ceil +locals: n@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0 +at locals position 0 +binding `round` in prelude +stack depth: 103; match depth: 0 +at stack index: 102 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0 +***function clause matching: : (n as :number) +binding `n` in round +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***accessing keyword: base :round stack depth: 1 +resolving binding `base` in round +locals: n@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `n` in round +locals: n@0//0 +at locals position 0 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0 +at locals position 0 +binding `range` in prelude +stack depth: 104; match depth: 0 +at stack index: 103 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0 +***function clause matching: : (end as :number) +binding `end` in range +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: end@0//0 +***accessing keyword: base :range stack depth: 1 +resolving binding `base` in range +locals: end@0//0 +as enclosing upvalue 0 +***after keyword access stack depth: 2 +resolving binding `end` in range +locals: end@0//0 +at locals position 0 +***function clause matching: : (start as :number, end as :number) +binding `start` in range +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: start@0//0 +binding `end` in range +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: start@0//0|end@1//0 +***accessing keyword: base :range stack depth: 2 +resolving binding `base` in range +locals: start@0//0|end@1//0 +as upvalue 0 +***after keyword access stack depth: 3 +resolving binding `start` in range +locals: start@0//0|end@1//0 +at locals position 0 +resolving binding `end` in range +locals: start@0//0|end@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0 +at locals position 0 +binding `at` in prelude +stack depth: 105; match depth: 0 +at stack index: 104 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0 +***function clause matching: : (xs as :list, n as :number) +binding `xs` in at +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: xs@0//0 +binding `n` in at +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: xs@0//0|n@1//0 +***accessing keyword: base :at stack depth: 2 +resolving binding `base` in at +locals: xs@0//0|n@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `xs` in at +locals: xs@0//0|n@1//0 +at locals position 0 +resolving binding `n` in at +locals: xs@0//0|n@1//0 +at locals position 1 +***function clause matching: : (xs as :tuple, n as :number) +binding `xs` in at +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: xs@0//0 +binding `n` in at +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: xs@0//0|n@1//0 +***accessing keyword: base :at stack depth: 2 +resolving binding `base` in at +locals: xs@0//0|n@1//0 +as upvalue 0 +***after keyword access stack depth: 3 +resolving binding `xs` in at +locals: xs@0//0|n@1//0 +at locals position 0 +resolving binding `n` in at +locals: xs@0//0|n@1//0 +at locals position 1 +***function clause matching: : (_) +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0 +at locals position 0 +binding `second` in prelude +stack depth: 106; match depth: 0 +at stack index: 105 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0 +***function clause matching: : (xs) +binding `xs` in second +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***calling function ordered? stack depth: 1 +resolving binding `xs` in second +locals: xs@0//0 +at locals position 0 +resolving binding `ordered?` in second +locals: xs@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***calling function at stack depth: 0 +resolving binding `xs` in second +locals: xs@0//0 +at locals position 0 +resolving binding `at` in second +locals: xs@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 3 +resolving binding `ordered?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0 +at locals position 3 +resolving binding `at` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0 +at locals position 104 +binding `last` in prelude +stack depth: 107; match depth: 0 +at stack index: 106 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0 +***function clause matching: : (xs) +binding `xs` in last +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***calling function ordered? stack depth: 1 +resolving binding `xs` in last +locals: xs@0//0 +at locals position 0 +resolving binding `ordered?` in last +locals: xs@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***calling function at stack depth: 0 +resolving binding `xs` in last +locals: xs@0//0 +at locals position 0 +***calling function dec stack depth: 1 +***calling function count stack depth: 1 +resolving binding `xs` in last +locals: xs@0//0 +at locals position 0 +resolving binding `count` in last +locals: xs@0//0 +as enclosing upvalue 1 +***after 1 args stack depth: 3 +resolving binding `dec` in last +locals: xs@0//0 +as enclosing upvalue 2 +***after 1 args stack depth: 3 +resolving binding `at` in last +locals: xs@0//0 +as enclosing upvalue 3 +***after 2 args stack depth: 3 +resolving binding `ordered?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0 +at locals position 3 +resolving binding `count` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0 +at locals position 20 +resolving binding `dec` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0 +at locals position 19 +resolving binding `at` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0 +at locals position 104 +binding `slice` in prelude +stack depth: 108; match depth: 0 +at stack index: 107 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +***function clause matching: : (xs as :list, end as :number) +binding `xs` in slice +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: xs@0//0 +binding `end` in slice +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: xs@0//0|end@1//0 +***calling function slice stack depth: 2 +resolving binding `xs` in slice +locals: xs@0//0|end@1//0 +at locals position 0 +resolving binding `end` in slice +locals: xs@0//0|end@1//0 +at locals position 1 +resolving binding `slice` in slice +locals: xs@0//0|end@1//0 +as enclosing upvalue 0 +***after 3 args stack depth: 6 +***function clause matching: : (xs as :list, start as :number, end as :number) +binding `xs` in slice +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: xs@0//0 +binding `start` in slice +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: xs@0//0|start@1//0 +binding `end` in slice +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: xs@0//0|start@1//0|end@2//0 +***calling function gte? stack depth: 3 +resolving binding `start` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 1 +resolving binding `end` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 2 +resolving binding `gte?` in slice +locals: xs@0//0|start@1//0|end@2//0 +as enclosing upvalue 1 +***after 2 args stack depth: 6 +***calling function gt? stack depth: 3 +resolving binding `end` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 2 +***calling function count stack depth: 4 +resolving binding `xs` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `count` in slice +locals: xs@0//0|start@1//0|end@2//0 +as enclosing upvalue 2 +***after 1 args stack depth: 6 +resolving binding `gt?` in slice +locals: xs@0//0|start@1//0|end@2//0 +as enclosing upvalue 3 +***after 2 args stack depth: 6 +***calling function slice stack depth: 3 +resolving binding `xs` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `start` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 1 +***calling function count stack depth: 5 +resolving binding `xs` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `count` in slice +locals: xs@0//0|start@1//0|end@2//0 +as upvalue 2 +***after 1 args stack depth: 7 +resolving binding `slice` in slice +locals: xs@0//0|start@1//0|end@2//0 +as upvalue 0 +***after 3 args stack depth: 7 +***calling function neg? stack depth: 3 +resolving binding `start` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 1 +resolving binding `neg?` in slice +locals: xs@0//0|start@1//0|end@2//0 +as enclosing upvalue 4 +***after 1 args stack depth: 5 +***calling function slice stack depth: 3 +resolving binding `xs` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `end` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 2 +resolving binding `slice` in slice +locals: xs@0//0|start@1//0|end@2//0 +as upvalue 0 +***after 3 args stack depth: 7 +***accessing keyword: base :slice stack depth: 3 +resolving binding `base` in slice +locals: xs@0//0|start@1//0|end@2//0 +as enclosing upvalue 5 +***after keyword access stack depth: 4 +resolving binding `xs` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `start` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 1 +resolving binding `end` in slice +locals: xs@0//0|start@1//0|end@2//0 +at locals position 2 +***function clause matching: : (str as :string, end as :number) +binding `str` in slice +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: str@0//0 +binding `end` in slice +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: str@0//0|end@1//0 +***accessing keyword: base :str_slice stack depth: 2 +resolving binding `base` in slice +locals: str@0//0|end@1//0 +as upvalue 5 +***after keyword access stack depth: 3 +resolving binding `str` in slice +locals: str@0//0|end@1//0 +at locals position 0 +resolving binding `end` in slice +locals: str@0//0|end@1//0 +at locals position 1 +***function clause matching: : (str as :string, start as :number, end as :number) +binding `str` in slice +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: str@0//0 +binding `start` in slice +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: str@0//0|start@1//0 +binding `end` in slice +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: str@0//0|start@1//0|end@2//0 +***accessing keyword: base :str_slice stack depth: 3 +resolving binding `base` in slice +locals: str@0//0|start@1//0|end@2//0 +as upvalue 5 +***after keyword access stack depth: 4 +resolving binding `str` in slice +locals: str@0//0|start@1//0|end@2//0 +at locals position 0 +resolving binding `start` in slice +locals: str@0//0|start@1//0|end@2//0 +at locals position 1 +resolving binding `end` in slice +locals: str@0//0|start@1//0|end@2//0 +at locals position 2 +resolving binding `slice` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 107 +resolving binding `gte?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 68 +resolving binding `count` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 20 +resolving binding `gt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 67 +resolving binding `neg?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 72 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0 +at locals position 0 +binding `butlast` in prelude +stack depth: 109; match depth: 0 +at stack index: 108 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0 +***function clause matching: : (xs as :list) +binding `xs` in butlast +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: xs@0//0 +***calling function slice stack depth: 1 +resolving binding `xs` in butlast +locals: xs@0//0 +at locals position 0 +***calling function dec stack depth: 3 +***calling function count stack depth: 3 +resolving binding `xs` in butlast +locals: xs@0//0 +at locals position 0 +resolving binding `count` in butlast +locals: xs@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 5 +resolving binding `dec` in butlast +locals: xs@0//0 +as enclosing upvalue 1 +***after 1 args stack depth: 5 +resolving binding `slice` in butlast +locals: xs@0//0 +as enclosing upvalue 2 +***after 3 args stack depth: 5 +resolving binding `count` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0 +at locals position 20 +resolving binding `dec` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0 +at locals position 19 +resolving binding `slice` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0 +at locals position 107 +binding `keyword?` in prelude +stack depth: 110; match depth: 0 +at stack index: 109 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0 +***function clause matching: : (kw as :keyword) +binding `kw` in keyword? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: kw@0//0 +***function clause matching: : (_) +binding `assoc` in prelude +stack depth: 111; match depth: 0 +at stack index: 110 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0 +***function clause matching: : () +***function clause matching: : (d as :dict) +binding `d` in assoc +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in assoc +locals: d@0//0 +at locals position 0 +***function clause matching: : (d as :dict, k as :keyword, val) +binding `d` in assoc +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: d@0//0 +binding `k` in assoc +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: d@0//0|k@1//0 +binding `val` in assoc +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: d@0//0|k@1//0|val@2//0 +***accessing keyword: base :assoc stack depth: 3 +resolving binding `base` in assoc +locals: d@0//0|k@1//0|val@2//0 +as enclosing upvalue 0 +***after keyword access stack depth: 4 +resolving binding `d` in assoc +locals: d@0//0|k@1//0|val@2//0 +at locals position 0 +resolving binding `k` in assoc +locals: d@0//0|k@1//0|val@2//0 +at locals position 1 +resolving binding `val` in assoc +locals: d@0//0|k@1//0|val@2//0 +at locals position 2 +***function clause matching: : (d as :dict, (k as :keyword, val)) +binding `d` in assoc +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: d@0//0 +binding `k` in assoc +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: d@0//0|k@2//0 +binding `val` in assoc +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: d@0//0|k@2//0|val@3//0 +***accessing keyword: base :assoc stack depth: 4 +resolving binding `base` in assoc +locals: d@0//0|k@2//0|val@3//0 +as upvalue 0 +***after keyword access stack depth: 5 +resolving binding `d` in assoc +locals: d@0//0|k@2//0|val@3//0 +at locals position 0 +resolving binding `k` in assoc +locals: d@0//0|k@2//0|val@3//0 +at locals position 2 +resolving binding `val` in assoc +locals: d@0//0|k@2//0|val@3//0 +at locals position 3 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0 +at locals position 0 +binding `dissoc` in prelude +stack depth: 112; match depth: 0 +at stack index: 111 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0 +***function clause matching: : (d as :dict) +binding `d` in dissoc +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in dissoc +locals: d@0//0 +at locals position 0 +***function clause matching: : (d as :dict, k as :keyword) +binding `d` in dissoc +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: d@0//0 +binding `k` in dissoc +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: d@0//0|k@1//0 +***accessing keyword: base :dissoc stack depth: 2 +resolving binding `base` in dissoc +locals: d@0//0|k@1//0 +as enclosing upvalue 0 +***after keyword access stack depth: 3 +resolving binding `d` in dissoc +locals: d@0//0|k@1//0 +at locals position 0 +resolving binding `k` in dissoc +locals: d@0//0|k@1//0 +at locals position 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0 +at locals position 0 +binding `get` in prelude +stack depth: 113; match depth: 0 +at stack index: 112 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0 +***function clause matching: : (k as :keyword) +binding `k` in get +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: k@0//0 +***calling function get stack depth: 1 +resolving binding `k` in get +locals: k@0//0 +at locals position 0 +resolving binding `get` in get +locals: k@0//0 +as enclosing upvalue 0 +***function clause matching: : (k as :keyword, d as :dict) +binding `k` in get +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: k@0//0 +binding `d` in get +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: k@0//0|d@1//0 +***accessing keyword: base :get stack depth: 2 +resolving binding `base` in get +locals: k@0//0|d@1//0 +as enclosing upvalue 1 +***after keyword access stack depth: 3 +resolving binding `d` in get +locals: k@0//0|d@1//0 +at locals position 1 +resolving binding `k` in get +locals: k@0//0|d@1//0 +at locals position 0 +***function clause matching: : (k as :keyword, d as :dict, default) +binding `k` in get +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: k@0//0 +binding `d` in get +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: k@0//0|d@1//0 +binding `default` in get +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: k@0//0|d@1//0|default@2//0 +***accessing keyword: base :get stack depth: 3 +resolving binding `base` in get +locals: k@0//0|d@1//0|default@2//0 +as upvalue 1 +***after keyword access stack depth: 4 +resolving binding `d` in get +locals: k@0//0|d@1//0|default@2//0 +at locals position 1 +resolving binding `k` in get +locals: k@0//0|d@1//0|default@2//0 +at locals position 0 +***match clause: : nil +resolving binding `default` in get +locals: k@0//0|d@1//0|default@2//0 +at locals position 2 +leaving scope 1 +***match clause: : val +binding `val` in get +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: k@0//0|d@1//0|default@2//0|val@3//1 +resolving binding `val` in get +locals: k@0//0|d@1//0|default@2//0|val@3//1 +at locals position 3 +leaving scope 1 +releasing binding val@3//1 +resolving binding `get` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0 +at locals position 112 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0 +at locals position 0 +binding `update` in prelude +stack depth: 114; match depth: 0 +at stack index: 113 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0 +***function clause matching: : (d as :dict) +binding `d` in update +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in update +locals: d@0//0 +at locals position 0 +***function clause matching: : (d as :dict, k as :keyword, updater as :fn) +binding `d` in update +stack depth: 3; match depth: 2 +at stack index: 0 +new locals: d@0//0 +binding `k` in update +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: d@0//0|k@1//0 +binding `updater` in update +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: d@0//0|k@1//0|updater@2//0 +***calling function assoc stack depth: 3 +resolving binding `d` in update +locals: d@0//0|k@1//0|updater@2//0 +at locals position 0 +resolving binding `k` in update +locals: d@0//0|k@1//0|updater@2//0 +at locals position 1 +***calling function updater stack depth: 5 +***calling function get stack depth: 5 +resolving binding `k` in update +locals: d@0//0|k@1//0|updater@2//0 +at locals position 1 +resolving binding `d` in update +locals: d@0//0|k@1//0|updater@2//0 +at locals position 0 +resolving binding `get` in update +locals: d@0//0|k@1//0|updater@2//0 +as enclosing upvalue 0 +***after 2 args stack depth: 8 +resolving binding `updater` in update +locals: d@0//0|k@1//0|updater@2//0 +at locals position 2 +***after 1 args stack depth: 7 +resolving binding `assoc` in update +locals: d@0//0|k@1//0|updater@2//0 +as enclosing upvalue 1 +***after 3 args stack depth: 7 +resolving binding `get` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0 +at locals position 112 +resolving binding `assoc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0 +at locals position 110 +binding `keys` in prelude +stack depth: 115; match depth: 0 +at stack index: 114 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0 +***function clause matching: : (d as :dict) +binding `d` in keys +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in keys +locals: d@0//0 +at locals position 0 +resolving binding `list` in keys +locals: d@0//0 +as enclosing upvalue 0 +***calling function map stack depth: 2 +resolving binding `first` in keys +locals: d@0//0 +as enclosing upvalue 1 +resolving binding `map` in keys +locals: d@0//0 +as enclosing upvalue 2 +resolving binding `list` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0 +at locals position 24 +resolving binding `first` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0 +at locals position 16 +resolving binding `map` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0 +at locals position 28 +binding `values` in prelude +stack depth: 116; match depth: 0 +at stack index: 115 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0 +***function clause matching: : (d as :dict) +binding `d` in values +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in values +locals: d@0//0 +at locals position 0 +resolving binding `list` in values +locals: d@0//0 +as enclosing upvalue 0 +***calling function map stack depth: 2 +resolving binding `second` in values +locals: d@0//0 +as enclosing upvalue 1 +resolving binding `map` in values +locals: d@0//0 +as enclosing upvalue 2 +resolving binding `list` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0 +at locals position 24 +resolving binding `second` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0 +at locals position 105 +resolving binding `map` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0 +at locals position 28 +binding `has?` in prelude +stack depth: 117; match depth: 0 +at stack index: 116 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0 +***function clause matching: : (k as :keyword) +binding `k` in has? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: k@0//0 +***calling function has? stack depth: 1 +resolving binding `k` in has? +locals: k@0//0 +at locals position 0 +resolving binding `has?` in has? +locals: k@0//0 +as enclosing upvalue 0 +***function clause matching: : (k as :keyword, d as :dict) +binding `k` in has? +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: k@0//0 +binding `d` in has? +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: k@0//0|d@1//0 +resolving binding `d` in has? +locals: k@0//0|d@1//0 +at locals position 1 +***calling function get stack depth: 3 +resolving binding `k` in has? +locals: k@0//0|d@1//0 +at locals position 0 +resolving binding `get` in has? +locals: k@0//0|d@1//0 +as enclosing upvalue 1 +***after 1 args stack depth: 5 +resolving binding `some?` in has? +locals: k@0//0|d@1//0 +as enclosing upvalue 2 +resolving binding `has?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0 +at locals position 116 +resolving binding `get` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0 +at locals position 112 +resolving binding `some?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0 +at locals position 6 +binding `dict` in prelude +stack depth: 118; match depth: 0 +at stack index: 117 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0 +***function clause matching: : (d as :dict) +binding `d` in dict +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +resolving binding `d` in dict +locals: d@0//0 +at locals position 0 +***function clause matching: : (l as :list) +binding `l` in dict +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: l@0//0 +***calling function fold stack depth: 1 +resolving binding `assoc` in dict +locals: l@0//0 +as enclosing upvalue 0 +resolving binding `l` in dict +locals: l@0//0 +at locals position 0 +resolving binding `fold` in dict +locals: l@0//0 +as enclosing upvalue 1 +***after 2 args stack depth: 4 +***function clause matching: : (t as :tuple) +binding `t` in dict +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: t@0//0 +resolving binding `t` in dict +locals: t@0//0 +at locals position 0 +resolving binding `list` in dict +locals: t@0//0 +as enclosing upvalue 2 +resolving binding `dict` in dict +locals: t@0//0 +as enclosing upvalue 3 +resolving binding `assoc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0 +at locals position 110 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0 +at locals position 26 +resolving binding `list` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0 +at locals position 24 +resolving binding `dict` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0 +at locals position 117 +binding `dict?` in prelude +stack depth: 119; match depth: 0 +at stack index: 118 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0 +***function clause matching: : (d as :dict) +binding `d` in dict? +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +***function clause matching: : (_) +binding `each!` in prelude +stack depth: 120; match depth: 0 +at stack index: 119 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0 +***function clause matching: : (f! as :fn, []) +binding `f!` in each! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f!@0//0 +***function clause matching: : (f! as :fn, [x]) +binding `f!` in each! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f!@0//0 +binding `x` in each! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: f!@0//0|x@2//0 +***calling function f! stack depth: 3 +resolving binding `x` in each! +locals: f!@0//0|x@2//0 +at locals position 2 +resolving binding `f!` in each! +locals: f!@0//0|x@2//0 +at locals position 0 +***after 1 args stack depth: 5 +leaving scope 1 +***leaving block before pop stack depth: 3 +popping back from 3 to 3 +***function clause matching: : (f! as :fn, [x, ...xs]) +binding `f!` in each! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: f!@0//0 +binding `x` in each! +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: f!@0//0|x@2//0 +binding `xs` in each! +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: f!@0//0|x@2//0|xs@3//0 +***calling function f! stack depth: 4 +resolving binding `x` in each! +locals: f!@0//0|x@2//0|xs@3//0 +at locals position 2 +resolving binding `f!` in each! +locals: f!@0//0|x@2//0|xs@3//0 +at locals position 0 +***after 1 args stack depth: 6 +***calling function each! stack depth: 4 +resolving binding `f!` in each! +locals: f!@0//0|x@2//0|xs@3//0 +at locals position 0 +resolving binding `xs` in each! +locals: f!@0//0|x@2//0|xs@3//0 +at locals position 3 +resolving binding `each!` in each! +locals: f!@0//0|x@2//0|xs@3//0 +as enclosing upvalue 0 +***after 2 args stack depth: 7 +leaving scope 1 +***leaving block before pop stack depth: 4 +popping back from 4 to 4 +resolving binding `each!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0 +at locals position 119 +binding `random` in prelude +stack depth: 121; match depth: 0 +at stack index: 120 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +***function clause matching: : () +***accessing keyword: base :random stack depth: 0 +resolving binding `base` in random +locals: +as enclosing upvalue 0 +***after keyword access stack depth: 1 +***function clause matching: : (n as :number) +binding `n` in random +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +***calling function mult stack depth: 1 +resolving binding `n` in random +locals: n@0//0 +at locals position 0 +***calling function random stack depth: 2 +resolving binding `random` in random +locals: n@0//0 +as enclosing upvalue 1 +***after 0 args stack depth: 3 +resolving binding `mult` in random +locals: n@0//0 +as enclosing upvalue 2 +***after 2 args stack depth: 4 +***function clause matching: : (m as :number, n as :number) +binding `m` in random +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: m@0//0 +binding `n` in random +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: m@0//0|n@1//0 +***calling function add stack depth: 2 +resolving binding `m` in random +locals: m@0//0|n@1//0 +at locals position 0 +***calling function random stack depth: 3 +***calling function sub stack depth: 3 +resolving binding `n` in random +locals: m@0//0|n@1//0 +at locals position 1 +resolving binding `m` in random +locals: m@0//0|n@1//0 +at locals position 0 +resolving binding `sub` in random +locals: m@0//0|n@1//0 +as enclosing upvalue 3 +***after 2 args stack depth: 6 +resolving binding `random` in random +locals: m@0//0|n@1//0 +as upvalue 1 +***after 1 args stack depth: 5 +resolving binding `add` in random +locals: m@0//0|n@1//0 +as enclosing upvalue 4 +***after 2 args stack depth: 5 +***function clause matching: : (l as :list) +binding `l` in random +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: l@0//0 +***before let binding stack depth: 1 +resolving binding `l` in random +locals: l@0//0 +at locals position 0 +resolving binding `count` in random +locals: l@0//0 +as enclosing upvalue 5 +resolving binding `random` in random +locals: l@0//0 +as upvalue 1 +resolving binding `floor` in random +locals: l@0//0 +as enclosing upvalue 6 +***after let expr stack depth: 2 +***let binding: matching: i +binding `i` in random +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: l@0//0|i@1//1 +***after let binding stack depth: 2 +***calling function at stack depth: 2 +resolving binding `l` in random +locals: l@0//0|i@1//1 +at locals position 0 +resolving binding `i` in random +locals: l@0//0|i@1//1 +at locals position 1 +resolving binding `at` in random +locals: l@0//0|i@1//1 +as enclosing upvalue 7 +***after 2 args stack depth: 5 +leaving scope 1 +releasing binding i@1//1 +***leaving block before pop stack depth: 2 +popping back from 2 to 1 +***function clause matching: : (t as :tuple) +binding `t` in random +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: t@0//0 +***before let binding stack depth: 1 +resolving binding `t` in random +locals: t@0//0 +at locals position 0 +resolving binding `count` in random +locals: t@0//0 +as upvalue 5 +resolving binding `random` in random +locals: t@0//0 +as upvalue 1 +resolving binding `floor` in random +locals: t@0//0 +as upvalue 6 +***after let expr stack depth: 2 +***let binding: matching: i +binding `i` in random +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: t@0//0|i@1//1 +***after let binding stack depth: 2 +***calling function at stack depth: 2 +resolving binding `t` in random +locals: t@0//0|i@1//1 +at locals position 0 +resolving binding `i` in random +locals: t@0//0|i@1//1 +at locals position 1 +resolving binding `at` in random +locals: t@0//0|i@1//1 +as upvalue 7 +***after 2 args stack depth: 5 +leaving scope 1 +releasing binding i@1//1 +***leaving block before pop stack depth: 2 +popping back from 2 to 1 +***function clause matching: : (d as :dict) +binding `d` in random +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: d@0//0 +***before let binding stack depth: 1 +resolving binding `d` in random +locals: d@0//0 +at locals position 0 +resolving binding `keys` in random +locals: d@0//0 +as enclosing upvalue 8 +resolving binding `random` in random +locals: d@0//0 +as upvalue 1 +***after let expr stack depth: 2 +***let binding: matching: key +binding `key` in random +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: d@0//0|key@1//1 +***after let binding stack depth: 2 +***calling function get stack depth: 2 +resolving binding `key` in random +locals: d@0//0|key@1//1 +at locals position 1 +resolving binding `d` in random +locals: d@0//0|key@1//1 +at locals position 0 +resolving binding `get` in random +locals: d@0//0|key@1//1 +as enclosing upvalue 9 +***after 2 args stack depth: 5 +leaving scope 1 +releasing binding key@1//1 +***leaving block before pop stack depth: 2 +popping back from 2 to 1 +resolving binding `base` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 0 +resolving binding `random` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 120 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 58 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 57 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 56 +resolving binding `count` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 20 +resolving binding `floor` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 100 +resolving binding `at` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 104 +resolving binding `keys` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 114 +resolving binding `get` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0 +at locals position 112 +binding `random_int` in prelude +stack depth: 122; match depth: 0 +at stack index: 121 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0 +***function clause matching: : (n as :number) +binding `n` in random_int +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: n@0//0 +resolving binding `n` in random_int +locals: n@0//0 +at locals position 0 +resolving binding `random` in random_int +locals: n@0//0 +as enclosing upvalue 0 +resolving binding `floor` in random_int +locals: n@0//0 +as enclosing upvalue 1 +***function clause matching: : (m as :number, n as :number) +binding `m` in random_int +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: m@0//0 +binding `n` in random_int +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: m@0//0|n@1//0 +***calling function floor stack depth: 2 +***calling function random stack depth: 2 +resolving binding `m` in random_int +locals: m@0//0|n@1//0 +at locals position 0 +resolving binding `n` in random_int +locals: m@0//0|n@1//0 +at locals position 1 +resolving binding `random` in random_int +locals: m@0//0|n@1//0 +as upvalue 0 +***after 2 args stack depth: 5 +resolving binding `floor` in random_int +locals: m@0//0|n@1//0 +as upvalue 1 +***after 1 args stack depth: 4 +resolving binding `random` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0 +at locals position 120 +resolving binding `floor` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0 +at locals position 100 +binding `ok` in prelude +stack depth: 123; match depth: 0 +at stack index: 122 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0 +***function clause matching: : (value) +binding `value` in ok +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: value@0//0 +resolving binding `value` in ok +locals: value@0//0 +at locals position 0 +binding `ok?` in prelude +stack depth: 124; match depth: 0 +at stack index: 123 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0 +***function clause matching: : ((:ok, _)) +***function clause matching: : (_) +binding `err` in prelude +stack depth: 125; match depth: 0 +at stack index: 124 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0 +***function clause matching: : (msg) +binding `msg` in err +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: msg@0//0 +resolving binding `msg` in err +locals: msg@0//0 +at locals position 0 +binding `err?` in prelude +stack depth: 126; match depth: 0 +at stack index: 125 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0 +***function clause matching: : ((:err, _)) +***function clause matching: : (_) +binding `unwrap!` in prelude +stack depth: 127; match depth: 0 +at stack index: 126 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0 +***function clause matching: : ((:ok, value)) +binding `value` in unwrap! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: value@2//0 +resolving binding `value` in unwrap! +locals: value@2//0 +at locals position 2 +***function clause matching: : ((:err, msg)) +binding `msg` in unwrap! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: msg@2//0 +***calling function string stack depth: 3 +resolving binding `msg` in unwrap! +locals: msg@2//0 +at locals position 2 +resolving binding `string` in unwrap! +locals: msg@2//0 +as enclosing upvalue 0 +***after 2 args stack depth: 6 +***function clause matching: : (_) +resolving binding `string` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0 +at locals position 38 +binding `unwrap_or` in prelude +stack depth: 128; match depth: 0 +at stack index: 127 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0 +***function clause matching: : ((:ok, value), _) +binding `value` in unwrap_or +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: value@3//0 +resolving binding `value` in unwrap_or +locals: value@3//0 +at locals position 3 +***function clause matching: : ((:err, _), default) +binding `default` in unwrap_or +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: default@1//0 +resolving binding `default` in unwrap_or +locals: default@1//0 +at locals position 1 +binding `assert!` in prelude +stack depth: 129; match depth: 0 +at stack index: 128 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0 +***function clause matching: : (value) +binding `value` in assert! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: value@0//0 +resolving binding `value` in assert! +locals: value@0//0 +at locals position 0 +***after condition stack depth: 2 +resolving binding `value` in assert! +locals: value@0//0 +at locals position 0 +***after consequent stack depth: 2 +resolving binding `value` in assert! +locals: value@0//0 +at locals position 0 +***after alternative stack depth: 2 +***function clause matching: : (msg, value) +binding `msg` in assert! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: msg@0//0 +binding `value` in assert! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: msg@0//0|value@1//0 +resolving binding `value` in assert! +locals: msg@0//0|value@1//0 +at locals position 1 +***after condition stack depth: 3 +resolving binding `value` in assert! +locals: msg@0//0|value@1//0 +at locals position 1 +***after consequent stack depth: 3 +resolving binding `msg` in assert! +locals: msg@0//0|value@1//0 +at locals position 0 +resolving binding `value` in assert! +locals: msg@0//0|value@1//0 +at locals position 1 +***after alternative stack depth: 3 +***before let binding stack depth: 129 +***after let expr stack depth: 130 +***let binding: matching: colors +binding `colors` in prelude +stack depth: 130; match depth: 0 +at stack index: 129 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0 +***after let binding stack depth: 130 +***before let binding stack depth: 130 +***after let expr stack depth: 131 +***let binding: matching: turtle_init +binding `turtle_init` in prelude +stack depth: 131; match depth: 0 +at stack index: 130 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0 +***after let binding stack depth: 131 +binding `turtle_commands` in prelude +stack depth: 132; match depth: 0 +at stack index: 131 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0 +resolving binding `turtle_init` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0 +at locals position 130 +binding `turtle_state` in prelude +stack depth: 133; match depth: 0 +at stack index: 132 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0 +binding `apply_command` in prelude +stack depth: 134; match depth: 0 +at stack index: 133 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0 +binding `add_command!` in prelude +stack depth: 135; match depth: 0 +at stack index: 134 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +***function clause matching: : (command) +binding `command` in add_command! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: command@0//0 +***calling function update! stack depth: 1 +resolving binding `turtle_commands` in add_command! +locals: command@0//0 +as enclosing upvalue 0 +***calling function append stack depth: 2 +resolving binding `command` in add_command! +locals: command@0//0 +at locals position 0 +resolving binding `append` in add_command! +locals: command@0//0 +as enclosing upvalue 1 +resolving binding `update!` in add_command! +locals: command@0//0 +as enclosing upvalue 2 +***after 2 args stack depth: 4 +***before let binding stack depth: 1 +***calling function unbox stack depth: 1 +resolving binding `turtle_state` in add_command! +locals: command@0//0 +as enclosing upvalue 3 +resolving binding `unbox` in add_command! +locals: command@0//0 +as enclosing upvalue 4 +***after 1 args stack depth: 3 +***after let expr stack depth: 2 +***let binding: matching: prev +binding `prev` in add_command! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: command@0//0|prev@1//1 +***after let binding stack depth: 2 +***before let binding stack depth: 2 +***calling function apply_command stack depth: 2 +resolving binding `prev` in add_command! +locals: command@0//0|prev@1//1 +at locals position 1 +resolving binding `command` in add_command! +locals: command@0//0|prev@1//1 +at locals position 0 +resolving binding `apply_command` in add_command! +locals: command@0//0|prev@1//1 +as enclosing upvalue 5 +***after 2 args stack depth: 5 +***after let expr stack depth: 3 +***let binding: matching: curr +binding `curr` in add_command! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: command@0//0|prev@1//1|curr@2//1 +***after let binding stack depth: 3 +***calling function store! stack depth: 3 +resolving binding `turtle_state` in add_command! +locals: command@0//0|prev@1//1|curr@2//1 +as upvalue 3 +resolving binding `curr` in add_command! +locals: command@0//0|prev@1//1|curr@2//1 +at locals position 2 +resolving binding `store!` in add_command! +locals: command@0//0|prev@1//1|curr@2//1 +as enclosing upvalue 6 +***after 2 args stack depth: 6 +leaving scope 1 +releasing binding curr@2//1 +releasing binding prev@1//1 +***leaving block before pop stack depth: 3 +popping back from 3 to 1 +resolving binding `turtle_commands` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 131 +resolving binding `append` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 25 +resolving binding `update!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 54 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 52 +resolving binding `apply_command` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 133 +resolving binding `store!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0 +at locals position 53 +binding `forward!` in prelude +stack depth: 136; match depth: 0 +at stack index: 135 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0 +***function clause matching: : (steps as :number) +binding `steps` in forward! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: steps@0//0 +***calling function add_command! stack depth: 1 +resolving binding `steps` in forward! +locals: steps@0//0 +at locals position 0 +resolving binding `add_command!` in forward! +locals: steps@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0 +at locals position 134 +***before let binding stack depth: 136 +resolving binding `forward!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0 +at locals position 135 +***after let expr stack depth: 137 +***let binding: matching: fd! +binding `fd!` in prelude +stack depth: 137; match depth: 0 +at stack index: 136 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0 +***after let binding stack depth: 137 +binding `back!` in prelude +stack depth: 138; match depth: 0 +at stack index: 137 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0 +***function clause matching: : (steps as :number) +binding `steps` in back! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: steps@0//0 +***calling function add_command! stack depth: 1 +resolving binding `steps` in back! +locals: steps@0//0 +at locals position 0 +resolving binding `add_command!` in back! +locals: steps@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0 +at locals position 134 +***before let binding stack depth: 138 +resolving binding `back!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0 +at locals position 137 +***after let expr stack depth: 139 +***let binding: matching: bk! +binding `bk!` in prelude +stack depth: 139; match depth: 0 +at stack index: 138 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0 +***after let binding stack depth: 139 +binding `left!` in prelude +stack depth: 140; match depth: 0 +at stack index: 139 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0 +***function clause matching: : (turns as :number) +binding `turns` in left! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: turns@0//0 +***calling function add_command! stack depth: 1 +resolving binding `turns` in left! +locals: turns@0//0 +at locals position 0 +resolving binding `add_command!` in left! +locals: turns@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0 +at locals position 134 +***before let binding stack depth: 140 +resolving binding `left!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0 +at locals position 139 +***after let expr stack depth: 141 +***let binding: matching: lt! +binding `lt!` in prelude +stack depth: 141; match depth: 0 +at stack index: 140 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0 +***after let binding stack depth: 141 +binding `right!` in prelude +stack depth: 142; match depth: 0 +at stack index: 141 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0 +***function clause matching: : (turns as :number) +binding `turns` in right! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: turns@0//0 +***calling function add_command! stack depth: 1 +resolving binding `turns` in right! +locals: turns@0//0 +at locals position 0 +resolving binding `add_command!` in right! +locals: turns@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0 +at locals position 134 +***before let binding stack depth: 142 +resolving binding `right!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0 +at locals position 141 +***after let expr stack depth: 143 +***let binding: matching: rt! +binding `rt!` in prelude +stack depth: 143; match depth: 0 +at stack index: 142 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0 +***after let binding stack depth: 143 +binding `penup!` in prelude +stack depth: 144; match depth: 0 +at stack index: 143 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in penup! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0 +at locals position 134 +***before let binding stack depth: 144 +resolving binding `penup!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0 +at locals position 143 +***after let expr stack depth: 145 +***let binding: matching: pu! +binding `pu!` in prelude +stack depth: 145; match depth: 0 +at stack index: 144 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0 +***after let binding stack depth: 145 +binding `pendown!` in prelude +stack depth: 146; match depth: 0 +at stack index: 145 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in pendown! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0 +at locals position 134 +***before let binding stack depth: 146 +resolving binding `pendown!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0 +at locals position 145 +***after let expr stack depth: 147 +***let binding: matching: pd! +binding `pd!` in prelude +stack depth: 147; match depth: 0 +at stack index: 146 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0 +***after let binding stack depth: 147 +binding `pencolor!` in prelude +stack depth: 148; match depth: 0 +at stack index: 147 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0 +***function clause matching: : (color as :keyword) +binding `color` in pencolor! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: color@0//0 +***calling function add_command! stack depth: 1 +resolving binding `color` in pencolor! +locals: color@0//0 +at locals position 0 +resolving binding `add_command!` in pencolor! +locals: color@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : (gray as :number) +binding `gray` in pencolor! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: gray@0//0 +***calling function add_command! stack depth: 1 +resolving binding `gray` in pencolor! +locals: gray@0//0 +at locals position 0 +resolving binding `gray` in pencolor! +locals: gray@0//0 +at locals position 0 +resolving binding `gray` in pencolor! +locals: gray@0//0 +at locals position 0 +resolving binding `add_command!` in pencolor! +locals: gray@0//0 +as upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : ((r as :number, g as :number, b as :number)) +binding `r` in pencolor! +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: r@1//0 +binding `g` in pencolor! +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: r@1//0|g@2//0 +binding `b` in pencolor! +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: r@1//0|g@2//0|b@3//0 +***calling function add_command! stack depth: 4 +resolving binding `r` in pencolor! +locals: r@1//0|g@2//0|b@3//0 +at locals position 1 +resolving binding `g` in pencolor! +locals: r@1//0|g@2//0|b@3//0 +at locals position 2 +resolving binding `b` in pencolor! +locals: r@1//0|g@2//0|b@3//0 +at locals position 3 +resolving binding `add_command!` in pencolor! +locals: r@1//0|g@2//0|b@3//0 +as upvalue 0 +***after 1 args stack depth: 6 +***function clause matching: : ((r as :number, g as :number, b as :number, a as :number)) +binding `r` in pencolor! +stack depth: 5; match depth: 3 +at stack index: 1 +new locals: r@1//0 +binding `g` in pencolor! +stack depth: 5; match depth: 2 +at stack index: 2 +new locals: r@1//0|g@2//0 +binding `b` in pencolor! +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: r@1//0|g@2//0|b@3//0 +binding `a` in pencolor! +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: r@1//0|g@2//0|b@3//0|a@4//0 +***calling function add_command! stack depth: 5 +resolving binding `r` in pencolor! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 1 +resolving binding `g` in pencolor! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 2 +resolving binding `b` in pencolor! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 3 +resolving binding `a` in pencolor! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 4 +resolving binding `add_command!` in pencolor! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +as upvalue 0 +***after 1 args stack depth: 7 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0 +at locals position 134 +***before let binding stack depth: 148 +resolving binding `pencolor!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0 +at locals position 147 +***after let expr stack depth: 149 +***let binding: matching: pc! +binding `pc!` in prelude +stack depth: 149; match depth: 0 +at stack index: 148 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0 +***after let binding stack depth: 149 +binding `penwidth!` in prelude +stack depth: 150; match depth: 0 +at stack index: 149 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0 +***function clause matching: : (width as :number) +binding `width` in penwidth! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: width@0//0 +***calling function add_command! stack depth: 1 +resolving binding `width` in penwidth! +locals: width@0//0 +at locals position 0 +resolving binding `add_command!` in penwidth! +locals: width@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0 +at locals position 134 +***before let binding stack depth: 150 +resolving binding `penwidth!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0 +at locals position 149 +***after let expr stack depth: 151 +***let binding: matching: pw! +binding `pw!` in prelude +stack depth: 151; match depth: 0 +at stack index: 150 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0 +***after let binding stack depth: 151 +binding `background!` in prelude +stack depth: 152; match depth: 0 +at stack index: 151 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0 +***function clause matching: : (color as :keyword) +binding `color` in background! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: color@0//0 +***calling function add_command! stack depth: 1 +resolving binding `color` in background! +locals: color@0//0 +at locals position 0 +resolving binding `add_command!` in background! +locals: color@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : (gray as :number) +binding `gray` in background! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: gray@0//0 +***calling function add_command! stack depth: 1 +resolving binding `gray` in background! +locals: gray@0//0 +at locals position 0 +resolving binding `gray` in background! +locals: gray@0//0 +at locals position 0 +resolving binding `gray` in background! +locals: gray@0//0 +at locals position 0 +resolving binding `add_command!` in background! +locals: gray@0//0 +as upvalue 0 +***after 1 args stack depth: 3 +***function clause matching: : ((r as :number, g as :number, b as :number)) +binding `r` in background! +stack depth: 4; match depth: 2 +at stack index: 1 +new locals: r@1//0 +binding `g` in background! +stack depth: 4; match depth: 1 +at stack index: 2 +new locals: r@1//0|g@2//0 +binding `b` in background! +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: r@1//0|g@2//0|b@3//0 +***calling function add_command! stack depth: 4 +resolving binding `r` in background! +locals: r@1//0|g@2//0|b@3//0 +at locals position 1 +resolving binding `g` in background! +locals: r@1//0|g@2//0|b@3//0 +at locals position 2 +resolving binding `b` in background! +locals: r@1//0|g@2//0|b@3//0 +at locals position 3 +resolving binding `add_command!` in background! +locals: r@1//0|g@2//0|b@3//0 +as upvalue 0 +***after 1 args stack depth: 6 +***function clause matching: : ((r as :number, g as :number, b as :number, a as :number)) +binding `r` in background! +stack depth: 5; match depth: 3 +at stack index: 1 +new locals: r@1//0 +binding `g` in background! +stack depth: 5; match depth: 2 +at stack index: 2 +new locals: r@1//0|g@2//0 +binding `b` in background! +stack depth: 5; match depth: 1 +at stack index: 3 +new locals: r@1//0|g@2//0|b@3//0 +binding `a` in background! +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: r@1//0|g@2//0|b@3//0|a@4//0 +***calling function add_command! stack depth: 5 +resolving binding `r` in background! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 1 +resolving binding `g` in background! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 2 +resolving binding `b` in background! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 3 +resolving binding `a` in background! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +at locals position 4 +resolving binding `add_command!` in background! +locals: r@1//0|g@2//0|b@3//0|a@4//0 +as upvalue 0 +***after 1 args stack depth: 7 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0 +at locals position 134 +***before let binding stack depth: 152 +resolving binding `background!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0 +at locals position 151 +***after let expr stack depth: 153 +***let binding: matching: bg! +binding `bg!` in prelude +stack depth: 153; match depth: 0 +at stack index: 152 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0 +***after let binding stack depth: 153 +binding `home!` in prelude +stack depth: 154; match depth: 0 +at stack index: 153 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in home! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0 +at locals position 134 +binding `clear!` in prelude +stack depth: 155; match depth: 0 +at stack index: 154 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in clear! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0 +at locals position 134 +binding `goto!` in prelude +stack depth: 156; match depth: 0 +at stack index: 155 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0 +***function clause matching: : (x as :number, y as :number) +binding `x` in goto! +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: x@0//0 +binding `y` in goto! +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: x@0//0|y@1//0 +***calling function add_command! stack depth: 2 +resolving binding `x` in goto! +locals: x@0//0|y@1//0 +at locals position 0 +resolving binding `y` in goto! +locals: x@0//0|y@1//0 +at locals position 1 +resolving binding `add_command!` in goto! +locals: x@0//0|y@1//0 +as enclosing upvalue 0 +***after 1 args stack depth: 4 +***function clause matching: : ((x, y)) +binding `x` in goto! +stack depth: 3; match depth: 1 +at stack index: 1 +new locals: x@1//0 +binding `y` in goto! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: x@1//0|y@2//0 +***calling function goto! stack depth: 3 +resolving binding `x` in goto! +locals: x@1//0|y@2//0 +at locals position 1 +resolving binding `y` in goto! +locals: x@1//0|y@2//0 +at locals position 2 +resolving binding `goto!` in goto! +locals: x@1//0|y@2//0 +as enclosing upvalue 1 +***after 2 args stack depth: 6 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0 +at locals position 134 +resolving binding `goto!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0 +at locals position 155 +binding `setheading!` in prelude +stack depth: 157; match depth: 0 +at stack index: 156 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0 +***function clause matching: : (heading as :number) +binding `heading` in setheading! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: heading@0//0 +***calling function add_command! stack depth: 1 +resolving binding `heading` in setheading! +locals: heading@0//0 +at locals position 0 +resolving binding `add_command!` in setheading! +locals: heading@0//0 +as enclosing upvalue 0 +***after 1 args stack depth: 3 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0 +at locals position 134 +binding `showturtle!` in prelude +stack depth: 158; match depth: 0 +at stack index: 157 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in showturtle! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0 +at locals position 134 +binding `hideturtle!` in prelude +stack depth: 159; match depth: 0 +at stack index: 158 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0 +***function clause matching: : () +***calling function add_command! stack depth: 0 +resolving binding `add_command!` in hideturtle! +locals: +as enclosing upvalue 0 +***after 1 args stack depth: 2 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0 +at locals position 134 +binding `loadstate!` in prelude +stack depth: 160; match depth: 0 +at stack index: 159 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +***function clause matching: : (state) +binding `state` in loadstate! +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: state@0//0 +***before let binding stack depth: 1 +resolving binding `state` in loadstate! +locals: state@0//0 +at locals position 0 +***after let expr stack depth: 2 +***let binding: matching: #{:position position, :heading heading, :pendown? pendown?, :pencolor pencolor, :penwidth penwidth, :visible? visible?} +binding `position` in loadstate! +stack depth: 3; match depth: 0 +at stack index: 2 +new locals: state@0//0|position@2//1 +binding `heading` in loadstate! +stack depth: 4; match depth: 0 +at stack index: 3 +new locals: state@0//0|position@2//1|heading@3//1 +binding `pendown?` in loadstate! +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1 +binding `pencolor` in loadstate! +stack depth: 6; match depth: 0 +at stack index: 5 +new locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1 +binding `penwidth` in loadstate! +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1 +binding `visible?` in loadstate! +stack depth: 8; match depth: 0 +at stack index: 7 +new locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +***after let binding stack depth: 8 +***calling function add_command! stack depth: 8 +resolving binding `position` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 2 +resolving binding `heading` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 3 +resolving binding `visible?` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 7 +resolving binding `pendown?` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 4 +resolving binding `penwidth` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 6 +resolving binding `pencolor` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +at locals position 5 +resolving binding `add_command!` in loadstate! +locals: state@0//0|position@2//1|heading@3//1|pendown?@4//1|pencolor@5//1|penwidth@6//1|visible?@7//1 +as enclosing upvalue 0 +***after 1 args stack depth: 10 +leaving scope 1 +releasing binding visible?@7//1 +releasing binding penwidth@6//1 +releasing binding pencolor@5//1 +releasing binding pendown?@4//1 +releasing binding heading@3//1 +releasing binding position@2//1 +***leaving block before pop stack depth: 8 +popping back from 8 to 1 +resolving binding `add_command!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 134 +***function clause matching: : (state, command) +binding `state` in apply_command +stack depth: 2; match depth: 1 +at stack index: 0 +new locals: state@0//0 +binding `command` in apply_command +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: state@0//0|command@1//0 +resolving binding `command` in apply_command +locals: state@0//0|command@1//0 +at locals position 1 +***match clause: : (:goto, (x, y)) +binding `x` in apply_command +stack depth: 7; match depth: 1 +at stack index: 5 +new locals: state@0//0|command@1//0|x@5//1 +binding `y` in apply_command +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: state@0//0|command@1//0|x@5//1|y@6//1 +***calling function assoc stack depth: 7 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|x@5//1|y@6//1 +at locals position 0 +resolving binding `x` in apply_command +locals: state@0//0|command@1//0|x@5//1|y@6//1 +at locals position 5 +resolving binding `y` in apply_command +locals: state@0//0|command@1//0|x@5//1|y@6//1 +at locals position 6 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0|x@5//1|y@6//1 +as enclosing upvalue 0 +***after 3 args stack depth: 11 +leaving scope 1 +releasing binding y@6//1 +releasing binding x@5//1 +***match clause: : (:home) +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +***calling function assoc stack depth: 5 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***calling function assoc stack depth: 6 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +leaving scope 1 +***match clause: : (:clear) +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +***calling function assoc stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***after 3 args stack depth: 9 +***calling function assoc stack depth: 5 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +leaving scope 1 +***match clause: : (:right, turns) +binding `turns` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|turns@4//1 +***calling function update stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +at locals position 0 +***calling function add stack depth: 7 +resolving binding `turns` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +at locals position 4 +resolving binding `add` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +as enclosing upvalue 1 +resolving binding `update` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +as enclosing upvalue 2 +***after 3 args stack depth: 9 +leaving scope 1 +releasing binding turns@4//1 +***match clause: : (:left, turns) +binding `turns` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|turns@4//1 +***calling function update stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +at locals position 0 +***calling function sub stack depth: 7 +resolving binding `turns` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +at locals position 4 +resolving binding `sub` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +as enclosing upvalue 3 +resolving binding `update` in apply_command +locals: state@0//0|command@1//0|turns@4//1 +as upvalue 2 +***after 3 args stack depth: 9 +leaving scope 1 +releasing binding turns@4//1 +***match clause: : (:forward, steps) +binding `steps` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|steps@4//1 +***before let binding stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|steps@4//1 +at locals position 0 +***after let expr stack depth: 6 +***let binding: matching: #{:heading heading, :position position, ..._} +binding `heading` in apply_command +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2 +binding `position` in apply_command +stack depth: 8; match depth: 0 +at stack index: 7 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +***after let binding stack depth: 8 +***before let binding stack depth: 8 +***calling function heading/vector stack depth: 8 +resolving binding `heading` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +at locals position 6 +resolving binding `heading/vector` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +as enclosing upvalue 4 +***after 1 args stack depth: 10 +***after let expr stack depth: 9 +***let binding: matching: unit +binding `unit` in apply_command +stack depth: 9; match depth: 0 +at stack index: 8 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +***after let binding stack depth: 9 +***before let binding stack depth: 9 +***calling function mult stack depth: 9 +resolving binding `steps` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 4 +resolving binding `unit` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 8 +resolving binding `mult` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +as enclosing upvalue 5 +***after 2 args stack depth: 12 +***after let expr stack depth: 10 +***let binding: matching: vect +binding `vect` in apply_command +stack depth: 10; match depth: 0 +at stack index: 9 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +***after let binding stack depth: 10 +***calling function update stack depth: 10 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 0 +***calling function add stack depth: 12 +resolving binding `vect` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 9 +resolving binding `add` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as upvalue 1 +resolving binding `update` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as upvalue 2 +***after 3 args stack depth: 14 +leaving scope 2 +releasing binding vect@9//2 +releasing binding unit@8//2 +releasing binding position@7//2 +releasing binding heading@6//2 +***leaving block before pop stack depth: 10 +popping back from 10 to 5 +leaving scope 1 +releasing binding steps@4//1 +***match clause: : (:back, steps) +binding `steps` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|steps@4//1 +***before let binding stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|steps@4//1 +at locals position 0 +***after let expr stack depth: 6 +***let binding: matching: #{:heading heading, :position position, ..._} +binding `heading` in apply_command +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2 +binding `position` in apply_command +stack depth: 8; match depth: 0 +at stack index: 7 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +***after let binding stack depth: 8 +***before let binding stack depth: 8 +***calling function heading/vector stack depth: 8 +resolving binding `heading` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +at locals position 6 +resolving binding `heading/vector` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +as upvalue 4 +***after 1 args stack depth: 10 +***after let expr stack depth: 9 +***let binding: matching: unit +binding `unit` in apply_command +stack depth: 9; match depth: 0 +at stack index: 8 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +***after let binding stack depth: 9 +***before let binding stack depth: 9 +***calling function mult stack depth: 9 +resolving binding `steps` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 4 +resolving binding `unit` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 8 +resolving binding `mult` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +as upvalue 5 +***after 2 args stack depth: 12 +***after let expr stack depth: 10 +***let binding: matching: vect +binding `vect` in apply_command +stack depth: 10; match depth: 0 +at stack index: 9 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +***after let binding stack depth: 10 +***calling function update stack depth: 10 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 0 +***calling function sub stack depth: 12 +resolving binding `vect` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 9 +resolving binding `sub` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as upvalue 3 +resolving binding `update` in apply_command +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as upvalue 2 +***after 3 args stack depth: 14 +leaving scope 2 +releasing binding vect@9//2 +releasing binding unit@8//2 +releasing binding position@7//2 +releasing binding heading@6//2 +***leaving block before pop stack depth: 10 +popping back from 10 to 5 +leaving scope 1 +releasing binding steps@4//1 +***match clause: : (:penup) +***calling function assoc stack depth: 4 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***after 3 args stack depth: 8 +leaving scope 1 +***match clause: : (:pendown) +***calling function assoc stack depth: 4 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***after 3 args stack depth: 8 +leaving scope 1 +***match clause: : (:penwidth, pixels) +binding `pixels` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|pixels@4//1 +***calling function assoc stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|pixels@4//1 +at locals position 0 +resolving binding `pixels` in apply_command +locals: state@0//0|command@1//0|pixels@4//1 +at locals position 4 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0|pixels@4//1 +as upvalue 0 +***after 3 args stack depth: 9 +leaving scope 1 +releasing binding pixels@4//1 +***match clause: : (:pencolor, color) +binding `color` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|color@4//1 +***calling function assoc stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|color@4//1 +at locals position 0 +resolving binding `color` in apply_command +locals: state@0//0|command@1//0|color@4//1 +at locals position 4 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0|color@4//1 +as upvalue 0 +***after 3 args stack depth: 9 +leaving scope 1 +releasing binding color@4//1 +***match clause: : (:setheading, heading) +binding `heading` in apply_command +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|heading@4//1 +***calling function assoc stack depth: 5 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0|heading@4//1 +at locals position 0 +resolving binding `heading` in apply_command +locals: state@0//0|command@1//0|heading@4//1 +at locals position 4 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0|heading@4//1 +as upvalue 0 +***after 3 args stack depth: 9 +leaving scope 1 +releasing binding heading@4//1 +***match clause: : (:loadstate, position, heading, visible?, pendown?, penwidth, pencolor) +binding `position` in apply_command +stack depth: 10; match depth: 5 +at stack index: 4 +new locals: state@0//0|command@1//0|position@4//1 +binding `heading` in apply_command +stack depth: 10; match depth: 4 +at stack index: 5 +new locals: state@0//0|command@1//0|position@4//1|heading@5//1 +binding `visible?` in apply_command +stack depth: 10; match depth: 3 +at stack index: 6 +new locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1 +binding `pendown?` in apply_command +stack depth: 10; match depth: 2 +at stack index: 7 +new locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1 +binding `penwidth` in apply_command +stack depth: 10; match depth: 1 +at stack index: 8 +new locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1 +binding `pencolor` in apply_command +stack depth: 10; match depth: 0 +at stack index: 9 +new locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +resolving binding `pencolor` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 9 +resolving binding `penwidth` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 8 +resolving binding `pendown?` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 7 +resolving binding `visible?` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 6 +resolving binding `heading` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 5 +resolving binding `position` in apply_command +locals: state@0//0|command@1//0|position@4//1|heading@5//1|visible?@6//1|pendown?@7//1|penwidth@8//1|pencolor@9//1 +at locals position 4 +leaving scope 1 +releasing binding pencolor@9//1 +releasing binding penwidth@8//1 +releasing binding pendown?@7//1 +releasing binding visible?@6//1 +releasing binding heading@5//1 +releasing binding position@4//1 +***match clause: : (:show) +***calling function assoc stack depth: 4 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***after 3 args stack depth: 8 +leaving scope 1 +***match clause: : (:hide) +***calling function assoc stack depth: 4 +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +resolving binding `assoc` in apply_command +locals: state@0//0|command@1//0 +as upvalue 0 +***after 3 args stack depth: 8 +leaving scope 1 +***match clause: : (:background, _) +resolving binding `state` in apply_command +locals: state@0//0|command@1//0 +at locals position 0 +leaving scope 1 +resolving binding `assoc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 110 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 56 +resolving binding `update` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 113 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 57 +resolving binding `heading/vector` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 99 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0 +at locals position 58 +binding `position` in prelude +stack depth: 161; match depth: 0 +at stack index: 160 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0 +***function clause matching: : () +resolving binding `turtle_state` in position +locals: +as enclosing upvalue 0 +resolving binding `unbox` in position +locals: +as enclosing upvalue 1 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0 +at locals position 52 +binding `heading` in prelude +stack depth: 162; match depth: 0 +at stack index: 161 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0 +***function clause matching: : () +resolving binding `turtle_state` in heading +locals: +as enclosing upvalue 0 +resolving binding `unbox` in heading +locals: +as enclosing upvalue 1 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0 +at locals position 52 +binding `pendown?` in prelude +stack depth: 163; match depth: 0 +at stack index: 162 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0 +***function clause matching: : () +resolving binding `turtle_state` in pendown? +locals: +as enclosing upvalue 0 +resolving binding `unbox` in pendown? +locals: +as enclosing upvalue 1 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0 +at locals position 52 +binding `pencolor` in prelude +stack depth: 164; match depth: 0 +at stack index: 163 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0 +***function clause matching: : () +resolving binding `turtle_state` in pencolor +locals: +as enclosing upvalue 0 +resolving binding `unbox` in pencolor +locals: +as enclosing upvalue 1 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0 +at locals position 52 +binding `penwidth` in prelude +stack depth: 165; match depth: 0 +at stack index: 164 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0 +***function clause matching: : () +resolving binding `turtle_state` in penwidth +locals: +as enclosing upvalue 0 +resolving binding `unbox` in penwidth +locals: +as enclosing upvalue 1 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0 +at locals position 132 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0 +at locals position 52 +binding `state` in prelude +stack depth: 166; match depth: 0 +at stack index: 165 +new locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +resolving binding `state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 165 +resolving binding `penwidth` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 164 +resolving binding `pencolor` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 163 +resolving binding `pendown?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 162 +resolving binding `heading` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 161 +resolving binding `position` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 160 +resolving binding `loadstate!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 159 +resolving binding `hideturtle!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 158 +resolving binding `showturtle!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 157 +resolving binding `setheading!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 156 +resolving binding `goto!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 155 +resolving binding `clear!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 154 +resolving binding `home!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 153 +resolving binding `bg!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 152 +resolving binding `background!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 151 +resolving binding `pw!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 150 +resolving binding `penwidth!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 149 +resolving binding `pc!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 148 +resolving binding `pencolor!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 147 +resolving binding `pd!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 146 +resolving binding `pendown!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 145 +resolving binding `pu!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 144 +resolving binding `penup!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 143 +resolving binding `rt!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 142 +resolving binding `right!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 141 +resolving binding `lt!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 140 +resolving binding `left!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 139 +resolving binding `bk!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 138 +resolving binding `back!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 137 +resolving binding `fd!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 136 +resolving binding `forward!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 135 +resolving binding `turtle_state` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 132 +resolving binding `turtle_commands` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 131 +resolving binding `turtle_init` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 130 +resolving binding `colors` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 129 +resolving binding `assert!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 128 +resolving binding `unwrap_or` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 127 +resolving binding `unwrap!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 126 +resolving binding `err?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 125 +resolving binding `err` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 124 +resolving binding `ok?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 123 +resolving binding `ok` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 122 +resolving binding `random_int` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 121 +resolving binding `random` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 120 +resolving binding `each!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 119 +resolving binding `dict?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 118 +resolving binding `dict` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 117 +resolving binding `has?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 116 +resolving binding `get` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 112 +resolving binding `values` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 115 +resolving binding `keys` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 114 +resolving binding `update` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 113 +resolving binding `dissoc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 111 +resolving binding `assoc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 110 +resolving binding `keyword?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 109 +resolving binding `slice` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 107 +resolving binding `butlast` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 108 +resolving binding `last` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 106 +resolving binding `second` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 105 +resolving binding `first` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 16 +resolving binding `at` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 104 +resolving binding `range` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 103 +resolving binding `round` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 102 +resolving binding `ceil` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 101 +resolving binding `floor` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 100 +resolving binding `heading/vector` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 99 +resolving binding `dist` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 98 +resolving binding `sqrt/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 96 +resolving binding `sqrt` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 95 +resolving binding `square` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 94 +resolving binding `odd?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 93 +resolving binding `even?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 92 +resolving binding `mod/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 91 +resolving binding `mod/0` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 90 +resolving binding `mod` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 89 +resolving binding `angle` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 88 +resolving binding `atan/2` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 87 +resolving binding `rotate` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 86 +resolving binding `tan` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 85 +resolving binding `cos` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 84 +resolving binding `sin` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 83 +resolving binding `rad/deg` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 82 +resolving binding `deg/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 81 +resolving binding `rad/turn` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 80 +resolving binding `turn/rad` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 79 +resolving binding `deg/turn` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 78 +resolving binding `turn/deg` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 77 +resolving binding `tau` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 76 +resolving binding `pi` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 75 +resolving binding `abs` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 74 +resolving binding `pos?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 73 +resolving binding `neg?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 72 +resolving binding `between?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 71 +resolving binding `lte?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 70 +resolving binding `lt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 69 +resolving binding `gte?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 68 +resolving binding `gt?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 67 +resolving binding `zero?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 66 +resolving binding `neg` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 65 +resolving binding `abs` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 74 +resolving binding `inv/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 64 +resolving binding `inv/0` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 63 +resolving binding `inv` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 62 +resolving binding `div/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 61 +resolving binding `div/0` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 60 +resolving binding `div` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 59 +resolving binding `mult` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 58 +resolving binding `sub` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 57 +resolving binding `add` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 56 +resolving binding `update!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 54 +resolving binding `store!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 53 +resolving binding `unbox` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 52 +resolving binding `box?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 51 +resolving binding `to_number` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 50 +resolving binding `sentence` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 49 +resolving binding `words` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 48 +resolving binding `strip` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 47 +resolving binding `ws?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 46 +resolving binding `chars/safe` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 45 +resolving binding `chars` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 44 +resolving binding `downcase` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 43 +resolving binding `upcase` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 42 +resolving binding `trim` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 41 +resolving binding `split` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 40 +resolving binding `join` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 39 +resolving binding `string?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 37 +resolving binding `string` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 38 +resolving binding `doc!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 36 +resolving binding `report!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 35 +resolving binding `show` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 34 +resolving binding `print!` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 33 +resolving binding `contains?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 32 +resolving binding `concat` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 31 +resolving binding `keep` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 30 +resolving binding `filter` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 29 +resolving binding `map` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 28 +resolving binding `append` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 25 +resolving binding `foldr` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 27 +resolving binding `fold` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 26 +resolving binding `first` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 16 +resolving binding `list` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 24 +resolving binding `list?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 23 +resolving binding `any?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 22 +resolving binding `empty?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 21 +resolving binding `count` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 20 +resolving binding `dec` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 19 +resolving binding `inc` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 18 +resolving binding `rest` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 17 +resolving binding `first` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 16 +resolving binding `fn?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 15 +resolving binding `tuple?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 14 +resolving binding `not` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 13 +resolving binding `bool` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 12 +resolving binding `false?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 11 +resolving binding `true?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 10 +resolving binding `bool?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 9 +resolving binding `eq?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 8 +resolving binding `some` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 7 +resolving binding `some?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 6 +resolving binding `nil?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 5 +resolving binding `assoc?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 4 +resolving binding `ordered?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 3 +resolving binding `coll?` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 2 +resolving binding `type` in prelude +locals: base@0//-1|type@1//0|coll?@2//0|ordered?@3//0|assoc?@4//0|nil?@5//0|some?@6//0|some@7//0|eq?@8//0|bool?@9//0|true?@10//0|false?@11//0|bool@12//0|not@13//0|tuple?@14//0|fn?@15//0|first@16//0|rest@17//0|inc@18//0|dec@19//0|count@20//0|empty?@21//0|any?@22//0|list?@23//0|list@24//0|append@25//0|fold@26//0|foldr@27//0|map@28//0|filter@29//0|keep@30//0|concat@31//0|contains?@32//0|print!@33//0|show@34//0|report!@35//0|doc!@36//0|string?@37//0|string@38//0|join@39//0|split@40//0|trim@41//0|upcase@42//0|downcase@43//0|chars@44//0|chars/safe@45//0|ws?@46//0|strip@47//0|words@48//0|sentence@49//0|to_number@50//0|box?@51//0|unbox@52//0|store!@53//0|update!@54//0|number?@55//0|add@56//0|sub@57//0|mult@58//0|div@59//0|div/0@60//0|div/safe@61//0|inv@62//0|inv/0@63//0|inv/safe@64//0|neg@65//0|zero?@66//0|gt?@67//0|gte?@68//0|lt?@69//0|lte?@70//0|between?@71//0|neg?@72//0|pos?@73//0|abs@74//0|pi@75//0|tau@76//0|turn/deg@77//0|deg/turn@78//0|turn/rad@79//0|rad/turn@80//0|deg/rad@81//0|rad/deg@82//0|sin@83//0|cos@84//0|tan@85//0|rotate@86//0|atan/2@87//0|angle@88//0|mod@89//0|mod/0@90//0|mod/safe@91//0|even?@92//0|odd?@93//0|square@94//0|sqrt@95//0|sqrt/safe@96//0|sum_of_squares@97//0|dist@98//0|heading/vector@99//0|floor@100//0|ceil@101//0|round@102//0|range@103//0|at@104//0|second@105//0|last@106//0|slice@107//0|butlast@108//0|keyword?@109//0|assoc@110//0|dissoc@111//0|get@112//0|update@113//0|keys@114//0|values@115//0|has?@116//0|dict@117//0|dict?@118//0|each!@119//0|random@120//0|random_int@121//0|ok@122//0|ok?@123//0|err@124//0|err?@125//0|unwrap!@126//0|unwrap_or@127//0|assert!@128//0|colors@129//0|turtle_init@130//0|turtle_commands@131//0|turtle_state@132//0|apply_command@133//0|add_command!@134//0|forward!@135//0|fd!@136//0|back!@137//0|bk!@138//0|left!@139//0|lt!@140//0|right!@141//0|rt!@142//0|penup!@143//0|pu!@144//0|pendown!@145//0|pd!@146//0|pencolor!@147//0|pc!@148//0|penwidth!@149//0|pw!@150//0|background!@151//0|bg!@152//0|home!@153//0|clear!@154//0|goto!@155//0|setheading!@156//0|showturtle!@157//0|hideturtle!@158//0|loadstate!@159//0|position@160//0|heading@161//0|pendown?@162//0|pencolor@163//0|penwidth@164//0|state@165//0 +at locals position 1 leaving scope 0 -releasing binding Some(Binding { name: "frob", depth: 0, stack_pos: 4 }) -releasing binding Some(Binding { name: "not", depth: 0, stack_pos: 3 }) -releasing binding Some(Binding { name: "foo", depth: 0, stack_pos: 2 }) -releasing binding Some(Binding { name: "quux", depth: 0, stack_pos: 1 }) -releasing binding Some(Binding { name: "test", depth: 0, stack_pos: 0 }) +releasing binding state@165//0 +releasing binding penwidth@164//0 +releasing binding pencolor@163//0 +releasing binding pendown?@162//0 +releasing binding heading@161//0 +releasing binding position@160//0 +releasing binding loadstate!@159//0 +releasing binding hideturtle!@158//0 +releasing binding showturtle!@157//0 +releasing binding setheading!@156//0 +releasing binding goto!@155//0 +releasing binding clear!@154//0 +releasing binding home!@153//0 +releasing binding bg!@152//0 +releasing binding background!@151//0 +releasing binding pw!@150//0 +releasing binding penwidth!@149//0 +releasing binding pc!@148//0 +releasing binding pencolor!@147//0 +releasing binding pd!@146//0 +releasing binding pendown!@145//0 +releasing binding pu!@144//0 +releasing binding penup!@143//0 +releasing binding rt!@142//0 +releasing binding right!@141//0 +releasing binding lt!@140//0 +releasing binding left!@139//0 +releasing binding bk!@138//0 +releasing binding back!@137//0 +releasing binding fd!@136//0 +releasing binding forward!@135//0 +releasing binding add_command!@134//0 +releasing binding apply_command@133//0 +releasing binding turtle_state@132//0 +releasing binding turtle_commands@131//0 +releasing binding turtle_init@130//0 +releasing binding colors@129//0 +releasing binding assert!@128//0 +releasing binding unwrap_or@127//0 +releasing binding unwrap!@126//0 +releasing binding err?@125//0 +releasing binding err@124//0 +releasing binding ok?@123//0 +releasing binding ok@122//0 +releasing binding random_int@121//0 +releasing binding random@120//0 +releasing binding each!@119//0 +releasing binding dict?@118//0 +releasing binding dict@117//0 +releasing binding has?@116//0 +releasing binding values@115//0 +releasing binding keys@114//0 +releasing binding update@113//0 +releasing binding get@112//0 +releasing binding dissoc@111//0 +releasing binding assoc@110//0 +releasing binding keyword?@109//0 +releasing binding butlast@108//0 +releasing binding slice@107//0 +releasing binding last@106//0 +releasing binding second@105//0 +releasing binding at@104//0 +releasing binding range@103//0 +releasing binding round@102//0 +releasing binding ceil@101//0 +releasing binding floor@100//0 +releasing binding heading/vector@99//0 +releasing binding dist@98//0 +releasing binding sum_of_squares@97//0 +releasing binding sqrt/safe@96//0 +releasing binding sqrt@95//0 +releasing binding square@94//0 +releasing binding odd?@93//0 +releasing binding even?@92//0 +releasing binding mod/safe@91//0 +releasing binding mod/0@90//0 +releasing binding mod@89//0 +releasing binding angle@88//0 +releasing binding atan/2@87//0 +releasing binding rotate@86//0 +releasing binding tan@85//0 +releasing binding cos@84//0 +releasing binding sin@83//0 +releasing binding rad/deg@82//0 +releasing binding deg/rad@81//0 +releasing binding rad/turn@80//0 +releasing binding turn/rad@79//0 +releasing binding deg/turn@78//0 +releasing binding turn/deg@77//0 +releasing binding tau@76//0 +releasing binding pi@75//0 +releasing binding abs@74//0 +releasing binding pos?@73//0 +releasing binding neg?@72//0 +releasing binding between?@71//0 +releasing binding lte?@70//0 +releasing binding lt?@69//0 +releasing binding gte?@68//0 +releasing binding gt?@67//0 +releasing binding zero?@66//0 +releasing binding neg@65//0 +releasing binding inv/safe@64//0 +releasing binding inv/0@63//0 +releasing binding inv@62//0 +releasing binding div/safe@61//0 +releasing binding div/0@60//0 +releasing binding div@59//0 +releasing binding mult@58//0 +releasing binding sub@57//0 +releasing binding add@56//0 +releasing binding number?@55//0 +releasing binding update!@54//0 +releasing binding store!@53//0 +releasing binding unbox@52//0 +releasing binding box?@51//0 +releasing binding to_number@50//0 +releasing binding sentence@49//0 +releasing binding words@48//0 +releasing binding strip@47//0 +releasing binding ws?@46//0 +releasing binding chars/safe@45//0 +releasing binding chars@44//0 +releasing binding downcase@43//0 +releasing binding upcase@42//0 +releasing binding trim@41//0 +releasing binding split@40//0 +releasing binding join@39//0 +releasing binding string@38//0 +releasing binding string?@37//0 +releasing binding doc!@36//0 +releasing binding report!@35//0 +releasing binding show@34//0 +releasing binding print!@33//0 +releasing binding contains?@32//0 +releasing binding concat@31//0 +releasing binding keep@30//0 +releasing binding filter@29//0 +releasing binding map@28//0 +releasing binding foldr@27//0 +releasing binding fold@26//0 +releasing binding append@25//0 +releasing binding list@24//0 +releasing binding list?@23//0 +releasing binding any?@22//0 +releasing binding empty?@21//0 +releasing binding count@20//0 +releasing binding dec@19//0 +releasing binding inc@18//0 +releasing binding rest@17//0 +releasing binding first@16//0 +releasing binding fn?@15//0 +releasing binding tuple?@14//0 +releasing binding not@13//0 +releasing binding bool@12//0 +releasing binding false?@11//0 +releasing binding true?@10//0 +releasing binding bool?@9//0 +releasing binding eq?@8//0 +releasing binding some@7//0 +releasing binding some?@6//0 +releasing binding nil?@5//0 +releasing binding assoc?@4//0 +releasing binding ordered?@3//0 +releasing binding coll?@2//0 +releasing binding type@1//0 +***leaving block before pop stack depth: 166 +popping back from 166 to 1 +closing over in type: #{:get fn get/base, ... +closing over in eq?: #{:get fn get/base, ... +closing over in eq?: fn eq? +closing over in first: #{:get fn get/base, ... +closing over in rest: #{:get fn get/base, ... +closing over in inc: #{:get fn get/base, ... +closing over in dec: #{:get fn get/base, ... +closing over in count: #{:get fn get/base, ... +closing over in any?: fn empty? +closing over in any?: fn not +closing over in list: #{:get fn get/base, ... +closing over in append: #{:get fn get/base, ... +closing over in fold: fn fold +closing over in fold: fn first +closing over in fold: fn rest +closing over in foldr: fn foldr +closing over in foldr: fn first +closing over in foldr: fn rest +closing over in map: fn map +closing over in map: fn append +closing over in map: fn fold +closing over in filter: fn filter +closing over in filter: fn append +closing over in filter: fn fold +closing over in keep: fn some? +closing over in keep: fn filter +closing over in concat: #{:get fn get/base, ... +closing over in concat: fn concat +closing over in concat: fn fold +closing over in contains?: fn first +closing over in contains?: fn eq? +closing over in contains?: fn rest +closing over in print!: #{:get fn get/base, ... +closing over in show: #{:get fn get/base, ... +closing over in report!: fn print! +closing over in report!: fn show +closing over in report!: fn concat +closing over in doc!: #{:get fn get/base, ... +closing over in doc!: fn print! +closing over in string: fn show +closing over in string: fn string +closing over in string: fn concat +closing over in join: fn join +closing over in join: fn concat +closing over in join: fn fold +closing over in split: #{:get fn get/base, ... +closing over in trim: #{:get fn get/base, ... +closing over in upcase: #{:get fn get/base, ... +closing over in downcase: #{:get fn get/base, ... +closing over in chars: #{:get fn get/base, ... +closing over in chars/safe: #{:get fn get/base, ... +closing over in strip: fn strip +closing over in words: fn strip +closing over in words: fn split +closing over in words: fn empty? +closing over in words: fn append +closing over in words: fn fold +closing over in sentence: fn join +closing over in to_number: #{:get fn get/base, ... +closing over in unbox: #{:get fn get/base, ... +closing over in store!: #{:get fn get/base, ... +closing over in update!: fn unbox +closing over in update!: fn store! +closing over in add: #{:get fn get/base, ... +closing over in add: fn add +closing over in add: fn fold +closing over in sub: #{:get fn get/base, ... +closing over in sub: fn sub +closing over in sub: fn fold +closing over in mult: #{:get fn get/base, ... +closing over in mult: fn mult +closing over in mult: fn fold +closing over in div: #{:get fn get/base, ... +closing over in div: fn mult +closing over in div: fn fold +closing over in div: fn div +closing over in div/0: #{:get fn get/base, ... +closing over in div/0: fn mult +closing over in div/0: fn fold +closing over in div/0: fn div/0 +closing over in div/safe: fn div +closing over in div/safe: fn mult +closing over in div/safe: fn fold +closing over in div/safe: fn div/safe +closing over in inv: fn div +closing over in inv/0: fn div/0 +closing over in inv/safe: fn div/safe +closing over in neg: fn mult +closing over in gt?: #{:get fn get/base, ... +closing over in gte?: #{:get fn get/base, ... +closing over in lt?: #{:get fn get/base, ... +closing over in lte?: #{:get fn get/base, ... +closing over in between?: fn gte? +closing over in between?: fn lt? +closing over in neg?: fn lt? +closing over in pos?: fn gt? +closing over in abs: fn neg? +closing over in abs: fn mult +=== calling into fn mult/2 === +== returning from fn mult == +closing over in turn/deg: fn mult +closing over in deg/turn: fn div +closing over in turn/rad: 6.283185307179586 +closing over in turn/rad: fn mult +closing over in rad/turn: 6.283185307179586 +closing over in rad/turn: fn div +closing over in deg/rad: 6.283185307179586 +closing over in deg/rad: fn div +closing over in deg/rad: fn mult +closing over in rad/deg: 6.283185307179586 +closing over in rad/deg: fn div +closing over in rad/deg: fn mult +closing over in sin: fn turn/rad +closing over in sin: #{:get fn get/base, ... +closing over in sin: fn deg/rad +closing over in cos: fn turn/rad +closing over in cos: #{:get fn get/base, ... +closing over in cos: fn deg/rad +closing over in tan: fn turn/rad +closing over in tan: #{:get fn get/base, ... +closing over in tan: fn deg/rad +closing over in rotate: fn rotate +closing over in rotate: fn cos +closing over in rotate: fn mult +closing over in rotate: fn sin +closing over in rotate: fn sub +closing over in rotate: fn add +closing over in atan/2: #{:get fn get/base, ... +closing over in atan/2: fn rad/turn +closing over in atan/2: fn atan/2 +closing over in atan/2: fn rad/deg +closing over in angle: fn atan/2 +closing over in angle: fn sub +closing over in mod: #{:get fn get/base, ... +closing over in mod/0: #{:get fn get/base, ... +closing over in mod/safe: #{:get fn get/base, ... +closing over in even?: fn mod +closing over in even?: fn eq? +closing over in odd?: fn mod +closing over in odd?: fn eq? +closing over in square: fn mult +closing over in sqrt: fn neg? +closing over in sqrt: fn not +closing over in sqrt: #{:get fn get/base, ... +closing over in sqrt/safe: fn neg? +closing over in sqrt/safe: fn not +closing over in sqrt/safe: #{:get fn get/base, ... +closing over in sum_of_squares: fn square +closing over in sum_of_squares: fn add +closing over in sum_of_squares: fn sum_of_squares +closing over in sum_of_squares: fn fold +closing over in dist: fn sum_of_squares +closing over in dist: fn sqrt +closing over in dist: fn dist +closing over in heading/vector: fn neg +closing over in heading/vector: fn add +closing over in heading/vector: fn cos +closing over in heading/vector: fn sin +closing over in floor: #{:get fn get/base, ... +closing over in ceil: #{:get fn get/base, ... +closing over in round: #{:get fn get/base, ... +closing over in range: #{:get fn get/base, ... +closing over in at: #{:get fn get/base, ... +closing over in second: fn ordered? +closing over in second: fn at +closing over in last: fn ordered? +closing over in last: fn count +closing over in last: fn dec +closing over in last: fn at +closing over in slice: fn slice +closing over in slice: fn gte? +closing over in slice: fn count +closing over in slice: fn gt? +closing over in slice: fn neg? +closing over in slice: #{:get fn get/base, ... +closing over in butlast: fn count +closing over in butlast: fn dec +closing over in butlast: fn slice +closing over in assoc: #{:get fn get/base, ... +closing over in dissoc: #{:get fn get/base, ... +closing over in get: fn get +closing over in get: #{:get fn get/base, ... +closing over in update: fn get +closing over in update: fn assoc +closing over in keys: fn list +closing over in keys: fn first +closing over in keys: fn map +closing over in values: fn list +closing over in values: fn second +closing over in values: fn map +closing over in has?: fn has? +closing over in has?: fn get +closing over in has?: fn some? +closing over in dict: fn assoc +closing over in dict: fn fold +closing over in dict: fn list +closing over in dict: fn dict +closing over in each!: fn each! +closing over in random: #{:get fn get/base, ... +closing over in random: fn random +closing over in random: fn mult +closing over in random: fn sub +closing over in random: fn add +closing over in random: fn count +closing over in random: fn floor +closing over in random: fn at +closing over in random: fn keys +closing over in random: fn get +closing over in random_int: fn random +closing over in random_int: fn floor +closing over in unwrap!: fn string +closing over in add_command!: box { [] } +closing over in add_command!: fn append +closing over in add_command!: fn update! +closing over in add_command!: box { #{:heading 0, ... +closing over in add_command!: fn unbox +closing over in add_command!: fn apply_command +closing over in add_command!: fn store! +closing over in forward!: fn add_command! +closing over in back!: fn add_command! +closing over in left!: fn add_command! +closing over in right!: fn add_command! +closing over in penup!: fn add_command! +closing over in pendown!: fn add_command! +closing over in pencolor!: fn add_command! +closing over in penwidth!: fn add_command! +closing over in background!: fn add_command! +closing over in home!: fn add_command! +closing over in clear!: fn add_command! +closing over in goto!: fn add_command! +closing over in goto!: fn goto! +closing over in setheading!: fn add_command! +closing over in showturtle!: fn add_command! +closing over in hideturtle!: fn add_command! +closing over in loadstate!: fn add_command! +closing over in loadstate!: fn assoc +closing over in loadstate!: fn add +closing over in loadstate!: fn update +closing over in loadstate!: fn sub +closing over in loadstate!: fn heading/vector +closing over in loadstate!: fn mult +closing over in position: box { #{:heading 0, ... +closing over in position: fn unbox +closing over in heading: box { #{:heading 0, ... +closing over in heading: fn unbox +closing over in pendown?: box { #{:heading 0, ... +closing over in pendown?: fn unbox +closing over in pencolor: box { #{:heading 0, ... +closing over in pencolor: fn unbox +closing over in penwidth: box { #{:heading 0, ... +closing over in penwidth: fn unbox +***before let binding stack depth: 0 +***after let expr stack depth: 1 +***let binding: matching: state +binding `state` in sandbox +stack depth: 1; match depth: 0 +at stack index: 0 +new locals: state@0//0 +***after let binding stack depth: 1 +***before let binding stack depth: 1 +***after let expr stack depth: 2 +***let binding: matching: command +binding `command` in sandbox +stack depth: 2; match depth: 0 +at stack index: 1 +new locals: state@0//0|command@1//0 +***after let binding stack depth: 2 +resolving binding `command` in sandbox +locals: state@0//0|command@1//0 +at locals position 1 +***match clause: : (:forward, steps) +binding `steps` in sandbox +stack depth: 5; match depth: 0 +at stack index: 4 +new locals: state@0//0|command@1//0|steps@4//1 +***calling function print! stack depth: 5 +resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +as global +***after 1 args stack depth: 7 +***before let binding stack depth: 5 +resolving binding `state` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +at locals position 0 +***after let expr stack depth: 6 +***let binding: matching: #{:heading heading, :position position, ..._} +binding `heading` in sandbox +stack depth: 7; match depth: 0 +at stack index: 6 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2 +binding `position` in sandbox +stack depth: 8; match depth: 0 +at stack index: 7 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +***after let binding stack depth: 8 +***calling function print! stack depth: 8 +resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +at locals position 6 +resolving binding `position` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +at locals position 7 +resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +as global +***after 1 args stack depth: 10 +***before let binding stack depth: 8 +***calling function heading/vector stack depth: 8 +resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +at locals position 6 +resolving binding `heading/vector` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +as global +***after 1 args stack depth: 10 +***after let expr stack depth: 9 +***let binding: matching: unit +binding `unit` in sandbox +stack depth: 9; match depth: 0 +at stack index: 8 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +***after let binding stack depth: 9 +***calling function print! stack depth: 9 +resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 6 +resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 8 +resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +as global +***after 1 args stack depth: 11 +***before let binding stack depth: 9 +***calling function mult stack depth: 9 +resolving binding `steps` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 4 +resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +at locals position 8 +resolving binding `mult` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +as global +***after 2 args stack depth: 12 +***after let expr stack depth: 10 +***let binding: matching: vect +binding `vect` in sandbox +stack depth: 10; match depth: 0 +at stack index: 9 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +***after let binding stack depth: 10 +***calling function print! stack depth: 10 +resolving binding `vect` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 9 +resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as global +***after 1 args stack depth: 12 +***before let binding stack depth: 10 +***calling function update stack depth: 10 +resolving binding `state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 0 +***calling function add stack depth: 12 +resolving binding `vect` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +at locals position 9 +resolving binding `add` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as global +resolving binding `update` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +as global +***after 3 args stack depth: 14 +***after let expr stack depth: 11 +***let binding: matching: new_state +binding `new_state` in sandbox +stack depth: 11; match depth: 0 +at stack index: 10 +new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +***after let binding stack depth: 11 +***calling function print! stack depth: 11 +resolving binding `new_state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +at locals position 10 +resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +as global +***after 1 args stack depth: 13 +resolving binding `new_state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +at locals position 10 +leaving scope 2 +releasing binding new_state@10//2 +releasing binding vect@9//2 +releasing binding unit@8//2 +releasing binding position@7//2 +releasing binding heading@6//2 +***leaving block before pop stack depth: 11 +popping back from 11 to 5 +leaving scope 1 +releasing binding steps@4//1 +leaving scope 0 +releasing binding command@1//0 +releasing binding state@0//0 +***leaving block before pop stack depth: 3 +popping back from 3 to 0 === source code === -let test = 3 +let state = #{:position (0, 0), :heading 0, :pencolor :white} -let quux = loop ([1, 2]) with { - ([]) -> false - ([x]) -> eq? (x, test) - ([x, ...xs]) -> if eq? (x, test) - then :yes - else recur (xs) +let command = (:forward, 10) + +match command with { + & (:goto, (x, y)) -> assoc (state, :position, (x, y)) + & (:home) -> do state > + & assoc (_, :position, (0, 0)) > + & assoc (_, :heading, 0) + & (:clear) -> do state > + & assoc (state, :position, (0, 0)) > + & assoc (_, :heading, 0) + & (:right, turns) -> update (state, :heading, add (_, turns)) + & (:left, turns) -> update (state, :heading, sub (_, turns)) + (:forward, steps) -> { + print! ("matched forward") + let #{heading, position, ...} = state + print! ("extracted {heading} and {position} from state") + let unit = heading/vector (heading) + print! ("unit vector at {heading}: {unit}") + let vect = mult (steps, unit) + print! ("update vector: {vect}") + let new_state = update (state, :position, add (vect, _)) + print! ("new state: {new_state}") + new_state + } + & (:back, steps) -> { + & let #{heading, position, ...} = state + & let unit = heading/vector (heading) + & let vect = mult (steps, unit) + & update (state, :position, sub (_, vect)) + & } + & (:penup) -> assoc (state, :pendown?, false) + & (:pendown) -> assoc (state, :pendown?, true) + & (:penwidth, pixels) -> assoc (state, :penwidth, pixels) + & (:pencolor, color) -> assoc (state, :pencolor, color) + & (:setheading, heading) -> assoc (state, :heading, heading) + & (:loadstate, position, heading, visible?, pendown?, penwidth, pencolor) -> #{position, heading, visible?, pendown?, penwidth, pencolor} + & (:show) -> assoc (state, :visible?, true) + & (:hide) -> assoc (state, :visible?, false) + & (:background, _) -> state } -let foo = :bar - -fn not { - (false) -> true - (nil) -> true - (_) -> false -} - -let frob = loop ([1, 2, 3]) with { - ([]) -> false - ([y]) -> eq? (y, test) - ([y, ...ys]) -> if not (eq? (y, test)) - then recur (ys) - else true -} - -[quux, frob] - - - === chunk: sandbox === IDX | CODE | INFO 0000: ***before let binding stack depth: 0 -0002: constant 00000: 3 -0005: ***after let expr stack depth: 1 -0007: ***let binding: matching: test -0009: reset_match -0010: match -0011: binding `test` in sandbox -0013: stack depth: 1; match depth: 0 -0015: at stack index: 0 -0017: new locals: test@0//0 -0019: panic_if_no_match -0020: ***after let binding stack depth: 1 -0022: ***before let binding stack depth: 1 -0024: ***entering loop stack depth: 1 -0026: push_list -0027: constant 00001: 1 -0030: append_list -0031: constant 00002: 2 -0034: append_list -0035: ***after loop args stack depth: 2 -0037: store_n 001 -0039: ***loop: after store stack depth: 1 -0041: load_n 001 -0043: ***loop: after load stack depth: 2 -0045: reset_match -0046: ***loop clause matching: : ([]) -0048: match_depth 000 -0050: match_list 000 -0052: jump_if_no_match 00006 -0055: load_list -0056: jump 00002 -0059: pop_n 000 -0061: jump_if_no_match 00016 -0064: ***loop: before body stack depth: 2 -0066: false -0067: ***loop: after body, before store stack depth: 3 -0069: store -0070: ***loop: after body, after store stack depth: 2 -0072: leaving scope 1 -0074: ***resetting the stack after loop from 2 to 1 stack depth: 2 -0076: pop -0077: jump 00218 -0080: ***loop: after load stack depth: 2 -0082: reset_match -0083: ***loop clause matching: : ([x]) -0085: match_depth 000 -0087: match_list 001 -0089: jump_if_no_match 00020 -0092: load_list -0093: match_depth 000 -0095: match -0096: binding `x` in sandbox -0098: stack depth: 3; match depth: 0 -0100: at stack index: 2 -0102: new locals: test@0//0|x@2//1 -0104: jump_if_no_match 00004 -0107: jump 00002 -0110: pop_n 001 -0112: jump_if_no_match 00044 -0115: ***loop: before body stack depth: 3 -0117: ***calling function eq? stack depth: 3 -0119: resolving binding `x` in sandbox -locals: test@0//0|x@2//1 -0121: at locals position 2 -0123: push_binding 002 -0125: resolving binding `test` in sandbox -locals: test@0//0|x@2//1 -0127: at locals position 0 -0129: push_binding 000 -0131: resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1 -0133: as global -0135: constant 00003: :eq? -0138: push_global -0139: ***after 2 args stack depth: 6 -0141: call 002 -0143: ***loop: after body, before store stack depth: 4 -0145: store -0146: ***loop: after body, after store stack depth: 3 -0148: leaving scope 1 -0150: releasing binding Some(Binding { name: "x", depth: 1, stack_pos: 2 }) -0152: ***resetting the stack after loop from 3 to 1 stack depth: 3 -0154: pop_n 002 -0156: jump 00139 -0159: ***loop: after load stack depth: 2 -0161: reset_match -0162: ***loop clause matching: : ([x, ...xs]) -0164: match_depth 000 -0166: match_splatted_list 002 -0168: jump_if_no_match 00035 -0171: load_splatted_list 002 -0173: match_depth 001 +0002: push_dict +0003: constant 00000: :pencolor +0006: constant 00001: :white +0009: append_dict +0010: constant 00002: :heading +0013: constant 00003: 0 +0016: append_dict +0017: constant 00004: :position +0020: constant 00003: 0 +0023: constant 00003: 0 +0026: push_tuple 002 +0028: append_dict +0029: ***after let expr stack depth: 1 +0031: ***let binding: matching: state +0033: reset_match +0034: match +0035: binding `state` in sandbox +0037: stack depth: 1; match depth: 0 +0039: at stack index: 0 +0041: new locals: state@0//0 +0043: panic_if_no_match +0044: ***after let binding stack depth: 1 +0046: ***before let binding stack depth: 1 +0048: constant 00005: :forward +0051: constant 00006: 10 +0054: push_tuple 002 +0056: ***after let expr stack depth: 2 +0058: ***let binding: matching: command +0060: reset_match +0061: match +0062: binding `command` in sandbox +0064: stack depth: 2; match depth: 0 +0066: at stack index: 1 +0068: new locals: state@0//0|command@1//0 +0070: panic_if_no_match +0071: ***after let binding stack depth: 2 +0073: resolving binding `command` in sandbox +locals: state@0//0|command@1//0 +0075: at locals position 1 +0077: push_binding 001 +0079: ***match clause: : (:forward, steps) +0081: match_tuple 002 +0083: jump_if_no_match 00028 +0086: load_tuple +0087: match_depth 001 +0089: match_constant 00005: :forward +0092: jump_if_no_match 00017 +0095: match_depth 000 +0097: match +0098: binding `steps` in sandbox +0100: stack depth: 5; match depth: 0 +0102: at stack index: 4 +0104: new locals: state@0//0|command@1//0|steps@4//1 +0106: jump_if_no_match 00003 +0109: jump 00002 +0112: pop_n 002 +0114: jump_if_no_match 00410 +0117: ***calling function print! stack depth: 5 +0119: constant 00007: "matched forward" +0122: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +0124: as global +0126: constant 00008: :print! +0129: push_global +0130: ***after 1 args stack depth: 7 +0132: call 001 +0134: pop +0135: ***before let binding stack depth: 5 +0137: resolving binding `state` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +0139: at locals position 0 +0141: push_binding 000 +0143: ***after let expr stack depth: 6 +0145: ***let binding: matching: #{:heading heading, :position position, ..._} +0147: reset_match +0148: match_splatted_dict 003 +0150: jump_if_no_match 00050 +0153: constant 00002: :heading +0156: load_dict_value 005 +0158: match +0159: binding `heading` in sandbox +0161: stack depth: 7; match depth: 0 +0163: at stack index: 6 +0165: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2 +0167: jump_if_no_match 00031 +0170: constant 00004: :position +0173: load_dict_value 005 0175: match -0176: binding `x` in sandbox -0178: stack depth: 4; match depth: 1 -0180: at stack index: 2 -0182: new locals: test@0//0|x@2//1 -0184: jump_if_no_match 00018 -0187: match_depth 000 -0189: match -0190: binding `xs` in sandbox -0192: stack depth: 4; match depth: 0 -0194: at stack index: 3 -0196: new locals: test@0//0|x@2//1|xs@3//1 -0198: jump_if_no_match 00004 -0201: jump 00002 -0204: pop_n 002 -0206: jump_if_no_match 00088 -0209: ***loop: before body stack depth: 4 -0211: ***calling function eq? stack depth: 4 -0213: resolving binding `x` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0215: at locals position 2 -0217: push_binding 002 -0219: resolving binding `test` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0221: at locals position 0 -0223: push_binding 000 -0225: resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0227: as global -0229: constant 00003: :eq? -0232: push_global -0233: ***after 2 args stack depth: 7 -0235: call 002 -0237: ***after condition stack depth: 5 -0239: jump_if_false 00008 -0242: constant 00004: :yes -0245: ***after consequent stack depth: 5 -0247: jump 00031 -0250: ***recur: before args stack depth: 4 -0252: recur arg: 0 -0254: resolving binding `xs` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0256: at locals position 3 -0258: push_binding 003 -0260: ***recur: after args stack depth: 5 -0262: store_n 001 -0264: ***recur: after store stack depth: 4 -0266: loop root depth: 1 -0268: pop_n 003 -0270: ***recur: after stack reset stack depth: 1 -0272: load_n 001 -0274: ***recur: after load, end of compilation stack depth: 2 -0276: jump_back 00233 -0279: ***after alternative stack depth: 2 -0281: ***loop: after body, before store stack depth: 2 -0283: store -0284: ***loop: after body, after store stack depth: 1 -0286: leaving scope 1 -0288: releasing binding Some(Binding { name: "xs", depth: 1, stack_pos: 3 }) -0290: releasing binding Some(Binding { name: "x", depth: 1, stack_pos: 2 }) -0292: ***resetting the stack after loop from 1 to 1 stack depth: 1 -0294: jump 00001 -0297: panic_no_match -0298: ***before loop arity adjustment stack depth: 2 -0300: load -0301: ***at very end of loop after load stack depth: 2 -0303: ***after let expr stack depth: 2 -0305: ***let binding: matching: quux -0307: reset_match -0308: match -0309: binding `quux` in sandbox -0311: stack depth: 2; match depth: 0 -0313: at stack index: 1 -0315: new locals: test@0//0|quux@1//0 -0317: panic_if_no_match -0318: ***after let binding stack depth: 2 -0320: ***before let binding stack depth: 2 -0322: constant 00005: :bar -0325: ***after let expr stack depth: 3 -0327: ***let binding: matching: foo -0329: reset_match -0330: match -0331: binding `foo` in sandbox -0333: stack depth: 3; match depth: 0 -0335: at stack index: 2 -0337: new locals: test@0//0|quux@1//0|foo@2//0 -0339: panic_if_no_match -0340: ***after let binding stack depth: 3 -0342: constant 00006: fn not -0345: binding `not` in sandbox -0347: stack depth: 4; match depth: 0 -0349: at stack index: 3 -0351: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0 -0353: ***before let binding stack depth: 4 -0355: ***entering loop stack depth: 4 -0357: push_list -0358: constant 00001: 1 -0361: append_list -0362: constant 00002: 2 -0365: append_list -0366: constant 00000: 3 -0369: append_list -0370: ***after loop args stack depth: 5 -0372: store_n 001 -0374: ***loop: after store stack depth: 4 -0376: load_n 001 -0378: ***loop: after load stack depth: 5 -0380: reset_match -0381: ***loop clause matching: : ([]) -0383: match_depth 000 -0385: match_list 000 -0387: jump_if_no_match 00006 -0390: load_list -0391: jump 00002 -0394: pop_n 000 -0396: jump_if_no_match 00016 -0399: ***loop: before body stack depth: 5 -0401: false -0402: ***loop: after body, before store stack depth: 6 -0404: store -0405: ***loop: after body, after store stack depth: 5 -0407: leaving scope 1 -0409: ***resetting the stack after loop from 5 to 4 stack depth: 5 -0411: pop -0412: jump 00228 -0415: ***loop: after load stack depth: 5 -0417: reset_match -0418: ***loop clause matching: : ([y]) -0420: match_depth 000 -0422: match_list 001 -0424: jump_if_no_match 00020 -0427: load_list -0428: match_depth 000 -0430: match -0431: binding `y` in sandbox -0433: stack depth: 6; match depth: 0 -0435: at stack index: 5 -0437: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0439: jump_if_no_match 00004 -0442: jump 00002 -0445: pop_n 001 -0447: jump_if_no_match 00044 -0450: ***loop: before body stack depth: 6 -0452: ***calling function eq? stack depth: 6 -0454: resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0456: at locals position 5 -0458: push_binding 005 -0460: resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0462: at locals position 0 -0464: push_binding 000 -0466: resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0468: as global -0470: constant 00003: :eq? -0473: push_global -0474: ***after 2 args stack depth: 9 -0476: call 002 -0478: ***loop: after body, before store stack depth: 7 -0480: store -0481: ***loop: after body, after store stack depth: 6 -0483: leaving scope 1 -0485: releasing binding Some(Binding { name: "y", depth: 1, stack_pos: 5 }) -0487: ***resetting the stack after loop from 6 to 4 stack depth: 6 -0489: pop_n 002 -0491: jump 00149 -0494: ***loop: after load stack depth: 5 -0496: reset_match -0497: ***loop clause matching: : ([y, ...ys]) -0499: match_depth 000 -0501: match_splatted_list 002 -0503: jump_if_no_match 00035 -0506: load_splatted_list 002 -0508: match_depth 001 -0510: match -0511: binding `y` in sandbox -0513: stack depth: 7; match depth: 1 -0515: at stack index: 5 -0517: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0519: jump_if_no_match 00018 -0522: match_depth 000 -0524: match -0525: binding `ys` in sandbox -0527: stack depth: 7; match depth: 0 -0529: at stack index: 6 -0531: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0533: jump_if_no_match 00004 -0536: jump 00002 -0539: pop_n 002 -0541: jump_if_no_match 00098 -0544: ***loop: before body stack depth: 7 -0546: ***calling function not stack depth: 7 -0548: ***calling function eq? stack depth: 7 -0550: resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0552: at locals position 5 -0554: push_binding 005 -0556: resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0558: at locals position 0 -0560: push_binding 000 -0562: resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0564: as global -0566: constant 00003: :eq? -0569: push_global -0570: ***after 2 args stack depth: 10 -0572: call 002 -0574: resolving binding `not` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0576: at locals position 3 -0578: push_binding 003 -0580: ***after 1 args stack depth: 9 -0582: call 001 -0584: ***after condition stack depth: 8 -0586: jump_if_false 00034 -0589: ***recur: before args stack depth: 7 -0591: recur arg: 0 -0593: resolving binding `ys` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0595: at locals position 6 -0597: push_binding 006 -0599: ***recur: after args stack depth: 8 -0601: store_n 001 -0603: ***recur: after store stack depth: 7 -0605: loop root depth: 4 -0607: pop_n 003 -0609: ***recur: after stack reset stack depth: 4 -0611: load_n 001 -0613: ***recur: after load, end of compilation stack depth: 5 -0615: jump_back 00237 -0618: ***after consequent stack depth: 5 -0620: jump 00003 -0623: true -0624: ***after alternative stack depth: 5 -0626: ***loop: after body, before store stack depth: 5 -0628: store -0629: ***loop: after body, after store stack depth: 4 -0631: leaving scope 1 -0633: releasing binding Some(Binding { name: "ys", depth: 1, stack_pos: 6 }) -0635: releasing binding Some(Binding { name: "y", depth: 1, stack_pos: 5 }) -0637: ***resetting the stack after loop from 4 to 4 stack depth: 4 -0639: jump 00001 -0642: panic_no_match -0643: ***before loop arity adjustment stack depth: 5 -0645: load -0646: ***at very end of loop after load stack depth: 5 -0648: ***after let expr stack depth: 5 -0650: ***let binding: matching: frob -0652: reset_match -0653: match -0654: binding `frob` in sandbox -0656: stack depth: 5; match depth: 0 -0658: at stack index: 4 -0660: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0662: panic_if_no_match -0663: ***after let binding stack depth: 5 -0665: push_list -0666: resolving binding `quux` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0668: at locals position 1 -0670: push_binding 001 -0672: append_list -0673: resolving binding `frob` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0675: at locals position 4 -0677: push_binding 004 -0679: append_list -0680: store -0681: leaving scope 0 -0683: releasing binding Some(Binding { name: "frob", depth: 0, stack_pos: 4 }) -0685: releasing binding Some(Binding { name: "not", depth: 0, stack_pos: 3 }) -0687: releasing binding Some(Binding { name: "foo", depth: 0, stack_pos: 2 }) -0689: releasing binding Some(Binding { name: "quux", depth: 0, stack_pos: 1 }) -0691: releasing binding Some(Binding { name: "test", depth: 0, stack_pos: 0 }) -0693: pop_n 005 -0695: load +0176: binding `position` in sandbox +0178: stack depth: 8; match depth: 0 +0180: at stack index: 7 +0182: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0184: jump_if_no_match 00014 +0187: push_binding 005 +0189: constant 00002: :heading +0192: drop_dict_entry 005 +0194: noop +0195: false +0196: drop_dict_entry 019 +0198: jump 00002 +0201: pop +0202: true +0203: panic_if_no_match +0204: ***after let binding stack depth: 8 +0206: ***calling function print! stack depth: 8 +0208: empty_string +0209: constant 00009: "extracted " +0212: concat_strings +0213: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0215: at locals position 6 +0217: push_binding 006 +0219: stringify +0220: concat_strings +0221: constant 00010: " and " +0224: concat_strings +0225: resolving binding `position` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0227: at locals position 7 +0229: push_binding 007 +0231: stringify +0232: concat_strings +0233: constant 00011: " from state" +0236: concat_strings +0237: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0239: as global +0241: constant 00008: :print! +0244: push_global +0245: ***after 1 args stack depth: 10 +0247: call 001 +0249: pop +0250: ***before let binding stack depth: 8 +0252: ***calling function heading/vector stack depth: 8 +0254: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0256: at locals position 6 +0258: push_binding 006 +0260: resolving binding `heading/vector` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0262: as global +0264: constant 00012: :heading/vector +0267: push_global +0268: ***after 1 args stack depth: 10 +0270: call 001 +0272: ***after let expr stack depth: 9 +0274: ***let binding: matching: unit +0276: reset_match +0277: match +0278: binding `unit` in sandbox +0280: stack depth: 9; match depth: 0 +0282: at stack index: 8 +0284: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0286: panic_if_no_match +0287: ***after let binding stack depth: 9 +0289: ***calling function print! stack depth: 9 +0291: empty_string +0292: constant 00013: "unit vector at " +0295: concat_strings +0296: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0298: at locals position 6 +0300: push_binding 006 +0302: stringify +0303: concat_strings +0304: constant 00014: ": " +0307: concat_strings +0308: resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0310: at locals position 8 +0312: push_binding 008 +0314: stringify +0315: concat_strings +0316: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0318: as global +0320: constant 00008: :print! +0323: push_global +0324: ***after 1 args stack depth: 11 +0326: call 001 +0328: pop +0329: ***before let binding stack depth: 9 +0331: ***calling function mult stack depth: 9 +0333: resolving binding `steps` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0335: at locals position 4 +0337: push_binding 004 +0339: resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0341: at locals position 8 +0343: push_binding 008 +0345: resolving binding `mult` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0347: as global +0349: constant 00015: :mult +0352: push_global +0353: ***after 2 args stack depth: 12 +0355: call 002 +0357: ***after let expr stack depth: 10 +0359: ***let binding: matching: vect +0361: reset_match +0362: match +0363: binding `vect` in sandbox +0365: stack depth: 10; match depth: 0 +0367: at stack index: 9 +0369: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0371: panic_if_no_match +0372: ***after let binding stack depth: 10 +0374: ***calling function print! stack depth: 10 +0376: empty_string +0377: constant 00016: "update vector: " +0380: concat_strings +0381: resolving binding `vect` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0383: at locals position 9 +0385: push_binding 009 +0387: stringify +0388: concat_strings +0389: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0391: as global +0393: constant 00008: :print! +0396: push_global +0397: ***after 1 args stack depth: 12 +0399: call 001 +0401: pop +0402: ***before let binding stack depth: 10 +0404: ***calling function update stack depth: 10 +0406: resolving binding `state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0408: at locals position 0 +0410: push_binding 000 +0412: constant 00004: :position +0415: ***calling function add stack depth: 12 +0417: resolving binding `vect` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0419: at locals position 9 +0421: push_binding 009 +0423: nothing +0424: resolving binding `add` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0426: as global +0428: constant 00017: :add +0431: push_global +0432: partial 002 +0434: resolving binding `update` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2 +0436: as global +0438: constant 00018: :update +0441: push_global +0442: ***after 3 args stack depth: 14 +0444: call 003 +0446: ***after let expr stack depth: 11 +0448: ***let binding: matching: new_state +0450: reset_match +0451: match +0452: binding `new_state` in sandbox +0454: stack depth: 11; match depth: 0 +0456: at stack index: 10 +0458: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +0460: panic_if_no_match +0461: ***after let binding stack depth: 11 +0463: ***calling function print! stack depth: 11 +0465: empty_string +0466: constant 00019: "new state: " +0469: concat_strings +0470: resolving binding `new_state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +0472: at locals position 10 +0474: push_binding 010 +0476: stringify +0477: concat_strings +0478: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +0480: as global +0482: constant 00008: :print! +0485: push_global +0486: ***after 1 args stack depth: 13 +0488: call 001 +0490: pop +0491: resolving binding `new_state` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2|vect@9//2|new_state@10//2 +0493: at locals position 10 +0495: push_binding 010 +0497: store +0498: leaving scope 2 +0500: releasing binding new_state@10//2 +0502: releasing binding vect@9//2 +0504: releasing binding unit@8//2 +0506: releasing binding position@7//2 +0508: releasing binding heading@6//2 +0510: ***leaving block before pop stack depth: 11 +0512: popping back from 11 to 5 +0514: pop_n 006 +0516: load +0517: store +0518: leaving scope 1 +0520: releasing binding steps@4//1 +0522: pop_n 002 +0524: jump 00001 +0527: panic_no_match +0528: load +0529: store +0530: leaving scope 0 +0532: releasing binding command@1//0 +0534: releasing binding state@0//0 +0536: ***leaving block before pop stack depth: 3 +0538: popping back from 3 to 0 +0540: pop_n 003 +0542: load @@ -1133,1247 +9085,1448 @@ locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 0000: [] (_,_,_,_,_,_,_,_) 0000: ***before let binding stack depth: 0 0002: [] (_,_,_,_,_,_,_,_) -0002: constant 00000: 3 -0005: [->3<-] (_,_,_,_,_,_,_,_) -0005: ***after let expr stack depth: 1 -0007: [->3<-] (_,_,_,_,_,_,_,_) -0007: ***let binding: matching: test -0009: [->3<-] (_,_,_,_,_,_,_,_) -0009: reset_match -0010: [->3<-] (_,_,_,_,_,_,_,_) -0010: match -0011: [->3<-] (_,_,_,_,_,_,_,_) -0011: binding `test` in sandbox -0013: [->3<-] (_,_,_,_,_,_,_,_) -0013: stack depth: 1; match depth: 0 -0015: [->3<-] (_,_,_,_,_,_,_,_) -0015: at stack index: 0 -0017: [->3<-] (_,_,_,_,_,_,_,_) -0017: new locals: test@0//0 -0019: [->3<-] (_,_,_,_,_,_,_,_) -0019: panic_if_no_match -0020: [->3<-] (_,_,_,_,_,_,_,_) -0020: ***after let binding stack depth: 1 -0022: [->3<-] (_,_,_,_,_,_,_,_) -0022: ***before let binding stack depth: 1 -0024: [->3<-] (_,_,_,_,_,_,_,_) -0024: ***entering loop stack depth: 1 -0026: [->3<-] (_,_,_,_,_,_,_,_) -0026: push_list -0027: [->3<-|[]] (_,_,_,_,_,_,_,_) -0027: constant 00001: 1 -0030: [->3<-|[]|1] (_,_,_,_,_,_,_,_) -0030: append_list -0031: [->3<-|[1]] (_,_,_,_,_,_,_,_) -0031: constant 00002: 2 -0034: [->3<-|[1]|2] (_,_,_,_,_,_,_,_) -0034: append_list -0035: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0035: ***after loop args stack depth: 2 -0037: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0037: store_n 001 -0039: [->3<-] ([1, 2],_,_,_,_,_,_,_) -0039: ***loop: after store stack depth: 1 -0041: [->3<-] ([1, 2],_,_,_,_,_,_,_) -0041: load_n 001 -0043: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0043: ***loop: after load stack depth: 2 -0045: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0045: reset_match -0046: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0046: ***loop clause matching: : ([]) -0048: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0048: match_depth 000 -0050: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0050: match_list 000 -0052: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0052: jump_if_no_match 00006 -0061: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0061: jump_if_no_match 00016 -0080: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0080: ***loop: after load stack depth: 2 -0082: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0082: reset_match -0083: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0083: ***loop clause matching: : ([x]) -0085: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0085: match_depth 000 -0087: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0087: match_list 001 -0089: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0089: jump_if_no_match 00020 -0112: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0112: jump_if_no_match 00044 -0159: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0159: ***loop: after load stack depth: 2 -0161: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0161: reset_match -0162: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0162: ***loop clause matching: : ([x, ...xs]) -0164: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0164: match_depth 000 -0166: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0166: match_splatted_list 002 -0168: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0168: jump_if_no_match 00035 -0171: [->3<-|[1, 2]] (_,_,_,_,_,_,_,_) -0171: load_splatted_list 002 -0173: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0173: match_depth 001 -0175: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) +0002: push_dict +0003: [->#{}<-] (_,_,_,_,_,_,_,_) +0003: constant 00000: :pencolor +0006: [->#{}<-|:pencolor] (_,_,_,_,_,_,_,_) +0006: constant 00001: :white +0009: [->#{}<-|:pencolor|:white] (_,_,_,_,_,_,_,_) +0009: append_dict +0010: [->#{:pencolor :white}<-] (_,_,_,_,_,_,_,_) +0010: constant 00002: :heading +0013: [->#{:pencolor :white}<-|:heading] (_,_,_,_,_,_,_,_) +0013: constant 00003: 0 +0016: [->#{:pencolor :white}<-|:heading|0] (_,_,_,_,_,_,_,_) +0016: append_dict +0017: [->#{:heading 0, :penco...<-] (_,_,_,_,_,_,_,_) +0017: constant 00004: :position +0020: [->#{:heading 0, :penco...<-|:position] (_,_,_,_,_,_,_,_) +0020: constant 00003: 0 +0023: [->#{:heading 0, :penco...<-|:position|0] (_,_,_,_,_,_,_,_) +0023: constant 00003: 0 +0026: [->#{:heading 0, :penco...<-|:position|0|0] (_,_,_,_,_,_,_,_) +0026: push_tuple 002 +0028: [->#{:heading 0, :penco...<-|:position|(0, 0)] (_,_,_,_,_,_,_,_) +0028: append_dict +0029: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0029: ***after let expr stack depth: 1 +0031: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0031: ***let binding: matching: state +0033: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0033: reset_match +0034: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0034: match +0035: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0035: binding `state` in sandbox +0037: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0037: stack depth: 1; match depth: 0 +0039: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0039: at stack index: 0 +0041: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0041: new locals: state@0//0 +0043: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0043: panic_if_no_match +0044: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0044: ***after let binding stack depth: 1 +0046: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0046: ***before let binding stack depth: 1 +0048: [->#{:position (0, 0), ...<-] (_,_,_,_,_,_,_,_) +0048: constant 00005: :forward +0051: [->#{:position (0, 0), ...<-|:forward] (_,_,_,_,_,_,_,_) +0051: constant 00006: 10 +0054: [->#{:position (0, 0), ...<-|:forward|10] (_,_,_,_,_,_,_,_) +0054: push_tuple 002 +0056: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0056: ***after let expr stack depth: 2 +0058: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0058: ***let binding: matching: command +0060: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0060: reset_match +0061: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0061: match +0062: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0062: binding `command` in sandbox +0064: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0064: stack depth: 2; match depth: 0 +0066: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0066: at stack index: 1 +0068: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0068: new locals: state@0//0|command@1//0 +0070: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0070: panic_if_no_match +0071: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0071: ***after let binding stack depth: 2 +0073: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0073: resolving binding `command` in sandbox +locals: state@0//0|command@1//0 +0075: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0075: at locals position 1 +0077: [->#{:position (0, 0), ...<-|(:forward, 10)] (_,_,_,_,_,_,_,_) +0077: push_binding 001 +0079: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)] (_,_,_,_,_,_,_,_) +0079: ***match clause: : (:forward, steps) +0081: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)] (_,_,_,_,_,_,_,_) +0081: match_tuple 002 +0083: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)] (_,_,_,_,_,_,_,_) +0083: jump_if_no_match 00028 +0086: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)] (_,_,_,_,_,_,_,_) +0086: load_tuple +0087: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0087: match_depth 001 +0089: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0089: match_constant 00005: :forward +0092: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0092: jump_if_no_match 00017 +0095: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0095: match_depth 000 +0097: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0097: match +0098: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0098: binding `steps` in sandbox +0100: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0100: stack depth: 5; match depth: 0 +0102: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0102: at stack index: 4 +0104: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0104: new locals: state@0//0|command@1//0|steps@4//1 +0106: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0106: jump_if_no_match 00003 +0109: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0109: jump 00002 +0114: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0114: jump_if_no_match 00410 +0117: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0117: ***calling function print! stack depth: 5 +0119: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0119: constant 00007: "matched forward" +0122: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"] (_,_,_,_,_,_,_,_) +0122: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +0124: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"] (_,_,_,_,_,_,_,_) +0124: as global +0126: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"] (_,_,_,_,_,_,_,_) +0126: constant 00008: :print! +0129: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"|:print!] (_,_,_,_,_,_,_,_) +0129: push_global +0130: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"|fn print!] (_,_,_,_,_,_,_,_) +0130: ***after 1 args stack depth: 7 +0132: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|"matched forward"|fn print!] (_,_,_,_,_,_,_,_) +0132: call 001 +=== calling into fn print!/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (...args) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0005: match +0006: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0006: binding `args` in print! +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0008: stack depth: 1; match depth: 0 +0010: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0010: at stack index: 0 +0012: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0012: new locals: args@0//0 +0014: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0014: jump_if_no_match 00003 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0017: jump 00000 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0020: jump_if_no_match 00039 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0023: ***accessing keyword: base :print! stack depth: 1 +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0025: resolving binding `base` in print! +locals: args@0//0 +0027: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0027: as enclosing upvalue 0 +0029: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0029: get_upvalue 000 +0031: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0031: constant 00000: :print! +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|#{:get fn get/base, ...|:print!] (_,_,_,_,_,_,_,_) +0034: get_key +0035: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|fn print!/base] (_,_,_,_,_,_,_,_) +0035: ***after keyword access stack depth: 2 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|fn print!/base] (_,_,_,_,_,_,_,_) +0037: store +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (fn print!/base,_,_,_,_,_,_,_) +0038: resolving binding `args` in print! +locals: args@0//0 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (fn print!/base,_,_,_,_,_,_,_) +0040: at locals position 0 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (fn print!/base,_,_,_,_,_,_,_) +0042: push_binding 000 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|["matched forward"]] (fn print!/base,_,_,_,_,_,_,_) +0044: load +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|["matched forward"]|fn print!/base] (_,_,_,_,_,_,_,_) +0045: call 001 +=== calling into fn print!/base/1 === +"matched forward" +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|:ok] (_,_,_,_,_,_,_,_) +0047: pop +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (_,_,_,_,_,_,_,_) +0048: constant 00001: :ok +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|:ok] (_,_,_,_,_,_,_,_) +0051: store +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (:ok,_,_,_,_,_,_,_) +0052: leaving scope 1 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (:ok,_,_,_,_,_,_,_) +0054: ***leaving block before pop stack depth: 1 +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (:ok,_,_,_,_,_,_,_) +0056: popping back from 1 to 1 +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (:ok,_,_,_,_,_,_,_) +0058: load +0059: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-|:ok] (_,_,_,_,_,_,_,_) +0059: store +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|->["matched forward"]<-] (:ok,_,_,_,_,_,_,_) +0060: pop +0061: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10] (:ok,_,_,_,_,_,_,_) +0061: return +== returning from fn print! == +0134: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|:ok] (_,_,_,_,_,_,_,_) +0134: pop +0135: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0135: ***before let binding stack depth: 5 +0137: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0137: resolving binding `state` in sandbox +locals: state@0//0|command@1//0|steps@4//1 +0139: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0139: at locals position 0 +0141: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10] (_,_,_,_,_,_,_,_) +0141: push_binding 000 +0143: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0143: ***after let expr stack depth: 6 +0145: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0145: ***let binding: matching: #{:heading heading, :position position, ..._} +0147: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0147: reset_match +0148: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0148: match_splatted_dict 003 +0150: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0150: jump_if_no_match 00050 +0153: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0153: constant 00002: :heading +0156: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|:heading] (_,_,_,_,_,_,_,_) +0156: load_dict_value 005 +0158: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0158: match +0159: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0159: binding `heading` in sandbox +0161: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0161: stack depth: 7; match depth: 0 +0163: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0163: at stack index: 6 +0165: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0165: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2 +0167: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0167: jump_if_no_match 00031 +0170: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0] (_,_,_,_,_,_,_,_) +0170: constant 00004: :position +0173: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|:position] (_,_,_,_,_,_,_,_) +0173: load_dict_value 005 +0175: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) 0175: match -0176: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0176: binding `x` in sandbox -0178: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0178: stack depth: 4; match depth: 1 -0180: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0180: at stack index: 2 -0182: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0182: new locals: test@0//0|x@2//1 -0184: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0184: jump_if_no_match 00018 -0187: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0187: match_depth 000 -0189: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0189: match -0190: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0190: binding `xs` in sandbox -0192: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0192: stack depth: 4; match depth: 0 -0194: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0194: at stack index: 3 -0196: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0196: new locals: test@0//0|x@2//1|xs@3//1 -0198: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0198: jump_if_no_match 00004 -0201: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0201: jump 00002 -0206: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0206: jump_if_no_match 00088 -0209: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0209: ***loop: before body stack depth: 4 -0211: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0211: ***calling function eq? stack depth: 4 -0213: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0213: resolving binding `x` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0215: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0215: at locals position 2 -0217: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0217: push_binding 002 -0219: [->3<-|[1, 2]|1|[2]|1] (_,_,_,_,_,_,_,_) -0219: resolving binding `test` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0221: [->3<-|[1, 2]|1|[2]|1] (_,_,_,_,_,_,_,_) -0221: at locals position 0 -0223: [->3<-|[1, 2]|1|[2]|1] (_,_,_,_,_,_,_,_) -0223: push_binding 000 -0225: [->3<-|[1, 2]|1|[2]|1|3] (_,_,_,_,_,_,_,_) -0225: resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0227: [->3<-|[1, 2]|1|[2]|1|3] (_,_,_,_,_,_,_,_) -0227: as global -0229: [->3<-|[1, 2]|1|[2]|1|3] (_,_,_,_,_,_,_,_) -0229: constant 00003: :eq? -0232: [->3<-|[1, 2]|1|[2]|1|3|:eq?] (_,_,_,_,_,_,_,_) -0232: push_global -0233: [->3<-|[1, 2]|1|[2]|1|3|fn eq?] (_,_,_,_,_,_,_,_) -0233: ***after 2 args stack depth: 7 -0235: [->3<-|[1, 2]|1|[2]|1|3|fn eq?] (_,_,_,_,_,_,_,_) -0235: call 002 -=== calling into fn eq?/2 === -0000: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) +0176: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0176: binding `position` in sandbox +0178: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0178: stack depth: 8; match depth: 0 +0180: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0180: at stack index: 7 +0182: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0182: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0184: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0184: jump_if_no_match 00014 +0187: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)] (_,_,_,_,_,_,_,_) +0187: push_binding 005 +0189: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0189: constant 00002: :heading +0192: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:position (0, 0), ...|:heading] (_,_,_,_,_,_,_,_) +0192: drop_dict_entry 005 +0193: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:position (0, 0), ...] (_,_,_,_,_,_,_,_) +0193: constant 00004: :position +0196: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:position (0, 0), ...|:position] (_,_,_,_,_,_,_,_) +0196: drop_dict_entry 019 +0197: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0197: match +0198: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0198: jump 00002 +0203: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0203: panic_if_no_match +0204: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0204: ***after let binding stack depth: 8 +0206: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0206: ***calling function print! stack depth: 8 +0208: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0208: empty_string +0209: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|""] (_,_,_,_,_,_,_,_) +0209: constant 00009: "extracted " +0212: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|""|"extracted "] (_,_,_,_,_,_,_,_) +0212: concat_strings +0213: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted "] (_,_,_,_,_,_,_,_) +0213: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0215: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted "] (_,_,_,_,_,_,_,_) +0215: at locals position 6 +0217: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted "] (_,_,_,_,_,_,_,_) +0217: push_binding 006 +0219: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted "|0] (_,_,_,_,_,_,_,_) +0219: stringify +0220: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted "|"0"] (_,_,_,_,_,_,_,_) +0220: concat_strings +0221: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0"] (_,_,_,_,_,_,_,_) +0221: constant 00010: " and " +0224: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0"|" and "] (_,_,_,_,_,_,_,_) +0224: concat_strings +0225: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and "] (_,_,_,_,_,_,_,_) +0225: resolving binding `position` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0227: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and "] (_,_,_,_,_,_,_,_) +0227: at locals position 7 +0229: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and "] (_,_,_,_,_,_,_,_) +0229: push_binding 007 +0231: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and "|(0, 0)] (_,_,_,_,_,_,_,_) +0231: stringify +0232: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and "|"0, 0"] (_,_,_,_,_,_,_,_) +0232: concat_strings +0233: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...] (_,_,_,_,_,_,_,_) +0233: constant 00011: " from state" +0236: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...|" from state"] (_,_,_,_,_,_,_,_) +0236: concat_strings +0237: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...] (_,_,_,_,_,_,_,_) +0237: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0239: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...] (_,_,_,_,_,_,_,_) +0239: as global +0241: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...] (_,_,_,_,_,_,_,_) +0241: constant 00008: :print! +0244: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...|:print!] (_,_,_,_,_,_,_,_) +0244: push_global +0245: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...|fn print!] (_,_,_,_,_,_,_,_) +0245: ***after 1 args stack depth: 10 +0247: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|"extracted 0 and 0, ...|fn print!] (_,_,_,_,_,_,_,_) +0247: call 001 +=== calling into fn print!/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) 0000: reset_match -0001: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (x, y) -0003: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0003: match_depth 001 -0005: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0005: match -0006: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0006: binding `x` in eq? -0008: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0008: stack depth: 2; match depth: 1 -0010: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0010: at stack index: 0 -0012: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0012: new locals: x@0//0 -0014: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0014: jump_if_no_match 00017 -0017: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0017: match_depth 000 -0019: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0019: match -0020: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0020: binding `y` in eq? -0022: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0022: stack depth: 2; match depth: 0 -0024: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0024: at stack index: 1 -0026: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0026: new locals: x@0//0|y@1//0 -0028: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0028: jump_if_no_match 00003 -0031: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0031: jump 00000 -0034: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0034: jump_if_no_match 00034 -0037: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0037: ***accessing keyword: base :eq? stack depth: 2 -0039: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0039: resolving binding `base` in eq? -locals: x@0//0|y@1//0 -0041: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0041: as enclosing upvalue 0 -0043: [3|[1, 2]|1|[2]|->1<-|3] (_,_,_,_,_,_,_,_) -0043: get_upvalue 000 -0045: [3|[1, 2]|1|[2]|->1<-|3|#{:trim fn trim/base...] (_,_,_,_,_,_,_,_) -0045: constant 00000: :eq? -0048: [3|[1, 2]|1|[2]|->1<-|3|#{:trim fn trim/base...|:eq?] (_,_,_,_,_,_,_,_) -0048: get_key -0049: [3|[1, 2]|1|[2]|->1<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0049: ***after keyword access stack depth: 3 -0051: [3|[1, 2]|1|[2]|->1<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0051: stash -0052: [3|[1, 2]|1|[2]|->1<-|3|fn eq?/base] (fn eq?/base,_,_,_,_,_,_,_) -0052: pop -0053: [3|[1, 2]|1|[2]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0053: resolving binding `x` in eq? -locals: x@0//0|y@1//0 -0055: [3|[1, 2]|1|[2]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0055: at locals position 0 -0057: [3|[1, 2]|1|[2]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0057: push_binding 000 -0059: [3|[1, 2]|1|[2]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0059: resolving binding `y` in eq? -locals: x@0//0|y@1//0 -0061: [3|[1, 2]|1|[2]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0061: at locals position 1 -0063: [3|[1, 2]|1|[2]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0063: push_binding 001 -0065: [3|[1, 2]|1|[2]|->1<-|3|1|3] (fn eq?/base,_,_,_,_,_,_,_) -0065: load -0066: [3|[1, 2]|1|[2]|->1<-|3|1|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0066: tail_call 002 -=== tail call into fn eq?/base/2 from eq? === -0237: [->3<-|[1, 2]|1|[2]|false] (_,_,_,_,_,_,_,_) -0237: ***after condition stack depth: 5 -0239: [->3<-|[1, 2]|1|[2]|false] (_,_,_,_,_,_,_,_) -0239: jump_if_false 00008 -0250: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0250: ***recur: before args stack depth: 4 -0252: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0252: recur arg: 0 -0254: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0254: resolving binding `xs` in sandbox -locals: test@0//0|x@2//1|xs@3//1 -0256: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0256: at locals position 3 -0258: [->3<-|[1, 2]|1|[2]] (_,_,_,_,_,_,_,_) -0258: push_binding 003 -0260: [->3<-|[1, 2]|1|[2]|[2]] (_,_,_,_,_,_,_,_) -0260: ***recur: after args stack depth: 5 -0262: [->3<-|[1, 2]|1|[2]|[2]] (_,_,_,_,_,_,_,_) -0262: store_n 001 -0264: [->3<-|[1, 2]|1|[2]] ([2],_,_,_,_,_,_,_) -0264: ***recur: after store stack depth: 4 -0266: [->3<-|[1, 2]|1|[2]] ([2],_,_,_,_,_,_,_) -0266: loop root depth: 1 -0268: [->3<-|[1, 2]|1|[2]] ([2],_,_,_,_,_,_,_) -0268: pop_n 003 -0270: [->3<-] ([2],_,_,_,_,_,_,_) -0270: ***recur: after stack reset stack depth: 1 -0272: [->3<-] ([2],_,_,_,_,_,_,_) -0272: load_n 001 -0274: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0274: ***recur: after load, end of compilation stack depth: 2 -0276: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0276: jump_back 00233 -0043: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0043: ***loop: after load stack depth: 2 -0045: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0045: reset_match -0046: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0046: ***loop clause matching: : ([]) -0048: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0048: match_depth 000 -0050: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0050: match_list 000 -0052: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0052: jump_if_no_match 00006 -0061: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0061: jump_if_no_match 00016 -0080: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0080: ***loop: after load stack depth: 2 -0082: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0082: reset_match -0083: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0083: ***loop clause matching: : ([x]) -0085: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0085: match_depth 000 -0087: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0087: match_list 001 -0089: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0089: jump_if_no_match 00020 -0092: [->3<-|[2]] (_,_,_,_,_,_,_,_) -0092: load_list -0093: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0093: match_depth 000 -0095: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0095: match -0096: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0096: binding `x` in sandbox -0098: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0098: stack depth: 3; match depth: 0 -0100: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0100: at stack index: 2 -0102: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0102: new locals: test@0//0|x@2//1 -0104: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0104: jump_if_no_match 00004 -0107: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0107: jump 00002 -0112: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0112: jump_if_no_match 00044 -0115: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0115: ***loop: before body stack depth: 3 -0117: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0117: ***calling function eq? stack depth: 3 -0119: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0119: resolving binding `x` in sandbox -locals: test@0//0|x@2//1 -0121: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0121: at locals position 2 -0123: [->3<-|[2]|2] (_,_,_,_,_,_,_,_) -0123: push_binding 002 -0125: [->3<-|[2]|2|2] (_,_,_,_,_,_,_,_) -0125: resolving binding `test` in sandbox -locals: test@0//0|x@2//1 -0127: [->3<-|[2]|2|2] (_,_,_,_,_,_,_,_) -0127: at locals position 0 -0129: [->3<-|[2]|2|2] (_,_,_,_,_,_,_,_) -0129: push_binding 000 -0131: [->3<-|[2]|2|2|3] (_,_,_,_,_,_,_,_) -0131: resolving binding `eq?` in sandbox -locals: test@0//0|x@2//1 -0133: [->3<-|[2]|2|2|3] (_,_,_,_,_,_,_,_) -0133: as global -0135: [->3<-|[2]|2|2|3] (_,_,_,_,_,_,_,_) -0135: constant 00003: :eq? -0138: [->3<-|[2]|2|2|3|:eq?] (_,_,_,_,_,_,_,_) -0138: push_global -0139: [->3<-|[2]|2|2|3|fn eq?] (_,_,_,_,_,_,_,_) -0139: ***after 2 args stack depth: 6 -0141: [->3<-|[2]|2|2|3|fn eq?] (_,_,_,_,_,_,_,_) -0141: call 002 -=== calling into fn eq?/2 === -0000: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0000: reset_match -0001: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (x, y) -0003: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0003: match_depth 001 -0005: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0005: match -0006: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0006: binding `x` in eq? -0008: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0008: stack depth: 2; match depth: 1 -0010: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0010: at stack index: 0 -0012: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0012: new locals: x@0//0 -0014: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0014: jump_if_no_match 00017 -0017: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0017: match_depth 000 -0019: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0019: match -0020: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0020: binding `y` in eq? -0022: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0022: stack depth: 2; match depth: 0 -0024: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0024: at stack index: 1 -0026: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0026: new locals: x@0//0|y@1//0 -0028: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0028: jump_if_no_match 00003 -0031: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0031: jump 00000 -0034: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0034: jump_if_no_match 00034 -0037: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0037: ***accessing keyword: base :eq? stack depth: 2 -0039: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0039: resolving binding `base` in eq? -locals: x@0//0|y@1//0 -0041: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0041: as enclosing upvalue 0 -0043: [3|[2]|2|->2<-|3] (_,_,_,_,_,_,_,_) -0043: get_upvalue 000 -0045: [3|[2]|2|->2<-|3|#{:trim fn trim/base...] (_,_,_,_,_,_,_,_) -0045: constant 00000: :eq? -0048: [3|[2]|2|->2<-|3|#{:trim fn trim/base...|:eq?] (_,_,_,_,_,_,_,_) -0048: get_key -0049: [3|[2]|2|->2<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0049: ***after keyword access stack depth: 3 -0051: [3|[2]|2|->2<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0051: stash -0052: [3|[2]|2|->2<-|3|fn eq?/base] (fn eq?/base,_,_,_,_,_,_,_) -0052: pop -0053: [3|[2]|2|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0053: resolving binding `x` in eq? -locals: x@0//0|y@1//0 -0055: [3|[2]|2|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0055: at locals position 0 -0057: [3|[2]|2|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0057: push_binding 000 -0059: [3|[2]|2|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0059: resolving binding `y` in eq? -locals: x@0//0|y@1//0 -0061: [3|[2]|2|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0061: at locals position 1 -0063: [3|[2]|2|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0063: push_binding 001 -0065: [3|[2]|2|->2<-|3|2|3] (fn eq?/base,_,_,_,_,_,_,_) -0065: load -0066: [3|[2]|2|->2<-|3|2|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0066: tail_call 002 -=== tail call into fn eq?/base/2 from eq? === -0143: [->3<-|[2]|2|false] (_,_,_,_,_,_,_,_) -0143: ***loop: after body, before store stack depth: 4 -0145: [->3<-|[2]|2|false] (_,_,_,_,_,_,_,_) -0145: store -0146: [->3<-|[2]|2] (false,_,_,_,_,_,_,_) -0146: ***loop: after body, after store stack depth: 3 -0148: [->3<-|[2]|2] (false,_,_,_,_,_,_,_) -0148: leaving scope 1 -0150: [->3<-|[2]|2] (false,_,_,_,_,_,_,_) -0150: releasing binding Some(Binding { name: "x", depth: 1, stack_pos: 2 }) -0152: [->3<-|[2]|2] (false,_,_,_,_,_,_,_) -0152: ***resetting the stack after loop from 3 to 1 stack depth: 3 -0154: [->3<-|[2]|2] (false,_,_,_,_,_,_,_) -0154: pop_n 002 -0156: [->3<-] (false,_,_,_,_,_,_,_) -0156: jump 00139 -0298: [->3<-] (false,_,_,_,_,_,_,_) -0298: ***before loop arity adjustment stack depth: 2 -0300: [->3<-] (false,_,_,_,_,_,_,_) -0300: load -0301: [->3<-|false] (_,_,_,_,_,_,_,_) -0301: ***at very end of loop after load stack depth: 2 -0303: [->3<-|false] (_,_,_,_,_,_,_,_) -0303: ***after let expr stack depth: 2 -0305: [->3<-|false] (_,_,_,_,_,_,_,_) -0305: ***let binding: matching: quux -0307: [->3<-|false] (_,_,_,_,_,_,_,_) -0307: reset_match -0308: [->3<-|false] (_,_,_,_,_,_,_,_) -0308: match -0309: [->3<-|false] (_,_,_,_,_,_,_,_) -0309: binding `quux` in sandbox -0311: [->3<-|false] (_,_,_,_,_,_,_,_) -0311: stack depth: 2; match depth: 0 -0313: [->3<-|false] (_,_,_,_,_,_,_,_) -0313: at stack index: 1 -0315: [->3<-|false] (_,_,_,_,_,_,_,_) -0315: new locals: test@0//0|quux@1//0 -0317: [->3<-|false] (_,_,_,_,_,_,_,_) -0317: panic_if_no_match -0318: [->3<-|false] (_,_,_,_,_,_,_,_) -0318: ***after let binding stack depth: 2 -0320: [->3<-|false] (_,_,_,_,_,_,_,_) -0320: ***before let binding stack depth: 2 -0322: [->3<-|false] (_,_,_,_,_,_,_,_) -0322: constant 00005: :bar -0325: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0325: ***after let expr stack depth: 3 -0327: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0327: ***let binding: matching: foo -0329: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0329: reset_match -0330: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0330: match -0331: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0331: binding `foo` in sandbox -0333: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0333: stack depth: 3; match depth: 0 -0335: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0335: at stack index: 2 -0337: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0337: new locals: test@0//0|quux@1//0|foo@2//0 -0339: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0339: panic_if_no_match -0340: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0340: ***after let binding stack depth: 3 -0342: [->3<-|false|:bar] (_,_,_,_,_,_,_,_) -0342: constant 00006: fn not -0345: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0345: binding `not` in sandbox -0347: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0347: stack depth: 4; match depth: 0 -0349: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0349: at stack index: 3 -0351: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0351: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0 -0353: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0353: ***before let binding stack depth: 4 -0355: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0355: ***entering loop stack depth: 4 -0357: [->3<-|false|:bar|fn not] (_,_,_,_,_,_,_,_) -0357: push_list -0358: [->3<-|false|:bar|fn not|[]] (_,_,_,_,_,_,_,_) -0358: constant 00001: 1 -0361: [->3<-|false|:bar|fn not|[]|1] (_,_,_,_,_,_,_,_) -0361: append_list -0362: [->3<-|false|:bar|fn not|[1]] (_,_,_,_,_,_,_,_) -0362: constant 00002: 2 -0365: [->3<-|false|:bar|fn not|[1]|2] (_,_,_,_,_,_,_,_) -0365: append_list -0366: [->3<-|false|:bar|fn not|[1, 2]] (_,_,_,_,_,_,_,_) -0366: constant 00000: 3 -0369: [->3<-|false|:bar|fn not|[1, 2]|3] (_,_,_,_,_,_,_,_) -0369: append_list -0370: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0370: ***after loop args stack depth: 5 -0372: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0372: store_n 001 -0374: [->3<-|false|:bar|fn not] ([1, 2, 3],_,_,_,_,_,_,_) -0374: ***loop: after store stack depth: 4 -0376: [->3<-|false|:bar|fn not] ([1, 2, 3],_,_,_,_,_,_,_) -0376: load_n 001 -0378: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0378: ***loop: after load stack depth: 5 -0380: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0380: reset_match -0381: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0381: ***loop clause matching: : ([]) -0383: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0383: match_depth 000 -0385: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0385: match_list 000 -0387: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0387: jump_if_no_match 00006 -0396: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0396: jump_if_no_match 00016 -0415: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0415: ***loop: after load stack depth: 5 -0417: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0417: reset_match -0418: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0418: ***loop clause matching: : ([y]) -0420: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0420: match_depth 000 -0422: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0422: match_list 001 -0424: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0424: jump_if_no_match 00020 -0447: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0447: jump_if_no_match 00044 -0494: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0494: ***loop: after load stack depth: 5 -0496: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0496: reset_match -0497: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0497: ***loop clause matching: : ([y, ...ys]) -0499: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0499: match_depth 000 -0501: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0501: match_splatted_list 002 -0503: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0503: jump_if_no_match 00035 -0506: [->3<-|false|:bar|fn not|[1, 2, 3]] (_,_,_,_,_,_,_,_) -0506: load_splatted_list 002 -0508: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0508: match_depth 001 -0510: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0510: match -0511: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0511: binding `y` in sandbox -0513: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0513: stack depth: 7; match depth: 1 -0515: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0515: at stack index: 5 -0517: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0517: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0519: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0519: jump_if_no_match 00018 -0522: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0522: match_depth 000 -0524: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0524: match -0525: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0525: binding `ys` in sandbox -0527: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0527: stack depth: 7; match depth: 0 -0529: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0529: at stack index: 6 -0531: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0531: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0533: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0533: jump_if_no_match 00004 -0536: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0536: jump 00002 -0541: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0541: jump_if_no_match 00098 -0544: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0544: ***loop: before body stack depth: 7 -0546: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0546: ***calling function not stack depth: 7 -0548: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0548: ***calling function eq? stack depth: 7 -0550: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0550: resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0552: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0552: at locals position 5 -0554: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0554: push_binding 005 -0556: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1] (_,_,_,_,_,_,_,_) -0556: resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0558: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1] (_,_,_,_,_,_,_,_) -0558: at locals position 0 -0560: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1] (_,_,_,_,_,_,_,_) -0560: push_binding 000 -0562: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3] (_,_,_,_,_,_,_,_) -0562: resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0564: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3] (_,_,_,_,_,_,_,_) -0564: as global -0566: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3] (_,_,_,_,_,_,_,_) -0566: constant 00003: :eq? -0569: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3|:eq?] (_,_,_,_,_,_,_,_) -0569: push_global -0570: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3|fn eq?] (_,_,_,_,_,_,_,_) -0570: ***after 2 args stack depth: 10 -0572: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|1|3|fn eq?] (_,_,_,_,_,_,_,_) -0572: call 002 -=== calling into fn eq?/2 === -0000: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0000: reset_match -0001: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (x, y) -0003: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0003: match_depth 001 -0005: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0005: match -0006: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0006: binding `x` in eq? -0008: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0008: stack depth: 2; match depth: 1 -0010: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0010: at stack index: 0 -0012: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0012: new locals: x@0//0 -0014: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0014: jump_if_no_match 00017 -0017: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0017: match_depth 000 -0019: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0019: match -0020: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0020: binding `y` in eq? -0022: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0022: stack depth: 2; match depth: 0 -0024: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0024: at stack index: 1 -0026: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0026: new locals: x@0//0|y@1//0 -0028: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0028: jump_if_no_match 00003 -0031: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0031: jump 00000 -0034: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0034: jump_if_no_match 00034 -0037: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0037: ***accessing keyword: base :eq? stack depth: 2 -0039: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0039: resolving binding `base` in eq? -locals: x@0//0|y@1//0 -0041: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0041: as enclosing upvalue 0 -0043: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (_,_,_,_,_,_,_,_) -0043: get_upvalue 000 -0045: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|#{:trim fn trim/base...] (_,_,_,_,_,_,_,_) -0045: constant 00000: :eq? -0048: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|#{:trim fn trim/base...|:eq?] (_,_,_,_,_,_,_,_) -0048: get_key -0049: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0049: ***after keyword access stack depth: 3 -0051: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0051: stash -0052: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|fn eq?/base] (fn eq?/base,_,_,_,_,_,_,_) -0052: pop -0053: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0053: resolving binding `x` in eq? -locals: x@0//0|y@1//0 -0055: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0055: at locals position 0 -0057: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0057: push_binding 000 -0059: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0059: resolving binding `y` in eq? -locals: x@0//0|y@1//0 -0061: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0061: at locals position 1 -0063: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|1] (fn eq?/base,_,_,_,_,_,_,_) -0063: push_binding 001 -0065: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|1|3] (fn eq?/base,_,_,_,_,_,_,_) -0065: load -0066: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->1<-|3|1|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0066: tail_call 002 -=== tail call into fn eq?/base/2 from eq? === -0574: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|false] (_,_,_,_,_,_,_,_) -0574: resolving binding `not` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0576: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|false] (_,_,_,_,_,_,_,_) -0576: at locals position 3 -0578: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|false] (_,_,_,_,_,_,_,_) -0578: push_binding 003 -0580: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|false|fn not] (_,_,_,_,_,_,_,_) -0580: ***after 1 args stack depth: 9 -0582: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|false|fn not] (_,_,_,_,_,_,_,_) -0582: call 001 -=== calling into fn not/1 === -0000: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0000: reset_match -0001: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (false) -0003: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (...args) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) 0003: match_depth 000 -0005: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0005: match_false -0006: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0006: jump_if_no_match 00003 -0009: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0009: jump 00000 -0012: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0012: jump_if_no_match 00004 -0015: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (_,_,_,_,_,_,_,_) -0015: true -0016: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-|true] (_,_,_,_,_,_,_,_) -0016: store -0017: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|->false<-] (true,_,_,_,_,_,_,_) -0017: pop -0018: [3|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (true,_,_,_,_,_,_,_) -0018: return -== returning from fn not == -0584: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|true] (_,_,_,_,_,_,_,_) -0584: ***after condition stack depth: 8 -0586: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|true] (_,_,_,_,_,_,_,_) -0586: jump_if_false 00034 -0589: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0589: ***recur: before args stack depth: 7 -0591: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0591: recur arg: 0 -0593: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0593: resolving binding `ys` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0595: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0595: at locals position 6 -0597: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] (_,_,_,_,_,_,_,_) -0597: push_binding 006 -0599: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|[2, 3]] (_,_,_,_,_,_,_,_) -0599: ***recur: after args stack depth: 8 -0601: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]|[2, 3]] (_,_,_,_,_,_,_,_) -0601: store_n 001 -0603: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] ([2, 3],_,_,_,_,_,_,_) -0603: ***recur: after store stack depth: 7 -0605: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] ([2, 3],_,_,_,_,_,_,_) -0605: loop root depth: 4 -0607: [->3<-|false|:bar|fn not|[1, 2, 3]|1|[2, 3]] ([2, 3],_,_,_,_,_,_,_) -0607: pop_n 003 -0609: [->3<-|false|:bar|fn not] ([2, 3],_,_,_,_,_,_,_) -0609: ***recur: after stack reset stack depth: 4 -0611: [->3<-|false|:bar|fn not] ([2, 3],_,_,_,_,_,_,_) -0611: load_n 001 -0613: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0613: ***recur: after load, end of compilation stack depth: 5 -0615: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0615: jump_back 00237 -0378: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0378: ***loop: after load stack depth: 5 -0380: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0380: reset_match -0381: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0381: ***loop clause matching: : ([]) -0383: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0383: match_depth 000 -0385: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0385: match_list 000 -0387: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0387: jump_if_no_match 00006 -0396: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0396: jump_if_no_match 00016 -0415: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0415: ***loop: after load stack depth: 5 -0417: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0417: reset_match -0418: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0418: ***loop clause matching: : ([y]) -0420: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0420: match_depth 000 -0422: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0422: match_list 001 -0424: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0424: jump_if_no_match 00020 -0447: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0447: jump_if_no_match 00044 -0494: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0494: ***loop: after load stack depth: 5 -0496: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0496: reset_match -0497: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0497: ***loop clause matching: : ([y, ...ys]) -0499: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0499: match_depth 000 -0501: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0501: match_splatted_list 002 -0503: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0503: jump_if_no_match 00035 -0506: [->3<-|false|:bar|fn not|[2, 3]] (_,_,_,_,_,_,_,_) -0506: load_splatted_list 002 -0508: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0508: match_depth 001 -0510: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0510: match -0511: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0511: binding `y` in sandbox -0513: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0513: stack depth: 7; match depth: 1 -0515: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0515: at stack index: 5 -0517: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0517: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0519: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0519: jump_if_no_match 00018 -0522: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0522: match_depth 000 -0524: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0524: match -0525: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0525: binding `ys` in sandbox -0527: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0527: stack depth: 7; match depth: 0 -0529: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0529: at stack index: 6 -0531: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0531: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0533: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0533: jump_if_no_match 00004 -0536: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0536: jump 00002 -0541: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0541: jump_if_no_match 00098 -0544: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0544: ***loop: before body stack depth: 7 -0546: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0546: ***calling function not stack depth: 7 -0548: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0548: ***calling function eq? stack depth: 7 -0550: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0550: resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0552: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0552: at locals position 5 -0554: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0554: push_binding 005 -0556: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2] (_,_,_,_,_,_,_,_) -0556: resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0558: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2] (_,_,_,_,_,_,_,_) -0558: at locals position 0 -0560: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2] (_,_,_,_,_,_,_,_) -0560: push_binding 000 -0562: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3] (_,_,_,_,_,_,_,_) -0562: resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0564: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3] (_,_,_,_,_,_,_,_) -0564: as global -0566: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3] (_,_,_,_,_,_,_,_) -0566: constant 00003: :eq? -0569: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3|:eq?] (_,_,_,_,_,_,_,_) -0569: push_global -0570: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3|fn eq?] (_,_,_,_,_,_,_,_) -0570: ***after 2 args stack depth: 10 -0572: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|2|3|fn eq?] (_,_,_,_,_,_,_,_) -0572: call 002 -=== calling into fn eq?/2 === -0000: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0000: reset_match -0001: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (x, y) -0003: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0003: match_depth 001 -0005: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) 0005: match -0006: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0006: binding `x` in eq? -0008: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0008: stack depth: 2; match depth: 1 -0010: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) +0006: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0006: binding `args` in print! +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0008: stack depth: 1; match depth: 0 +0010: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) 0010: at stack index: 0 -0012: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0012: new locals: x@0//0 -0014: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0014: jump_if_no_match 00017 -0017: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0017: match_depth 000 -0019: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0019: match -0020: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0020: binding `y` in eq? -0022: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0022: stack depth: 2; match depth: 0 -0024: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0024: at stack index: 1 -0026: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0026: new locals: x@0//0|y@1//0 -0028: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0028: jump_if_no_match 00003 -0031: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0031: jump 00000 -0034: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0034: jump_if_no_match 00034 -0037: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0037: ***accessing keyword: base :eq? stack depth: 2 -0039: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0039: resolving binding `base` in eq? -locals: x@0//0|y@1//0 -0041: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0041: as enclosing upvalue 0 -0043: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (_,_,_,_,_,_,_,_) -0043: get_upvalue 000 -0045: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|#{:trim fn trim/base...] (_,_,_,_,_,_,_,_) -0045: constant 00000: :eq? -0048: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|#{:trim fn trim/base...|:eq?] (_,_,_,_,_,_,_,_) -0048: get_key -0049: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0049: ***after keyword access stack depth: 3 -0051: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0051: stash -0052: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|fn eq?/base] (fn eq?/base,_,_,_,_,_,_,_) -0052: pop -0053: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0053: resolving binding `x` in eq? -locals: x@0//0|y@1//0 -0055: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0055: at locals position 0 -0057: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0057: push_binding 000 -0059: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0059: resolving binding `y` in eq? -locals: x@0//0|y@1//0 -0061: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0061: at locals position 1 -0063: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|2] (fn eq?/base,_,_,_,_,_,_,_) -0063: push_binding 001 -0065: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|2|3] (fn eq?/base,_,_,_,_,_,_,_) -0065: load -0066: [3|false|:bar|fn not|[2, 3]|2|[3]|->2<-|3|2|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0066: tail_call 002 -=== tail call into fn eq?/base/2 from eq? === -0574: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|false] (_,_,_,_,_,_,_,_) -0574: resolving binding `not` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0576: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|false] (_,_,_,_,_,_,_,_) -0576: at locals position 3 -0578: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|false] (_,_,_,_,_,_,_,_) -0578: push_binding 003 -0580: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|false|fn not] (_,_,_,_,_,_,_,_) -0580: ***after 1 args stack depth: 9 -0582: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|false|fn not] (_,_,_,_,_,_,_,_) -0582: call 001 -=== calling into fn not/1 === -0000: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) +0012: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0012: new locals: args@0//0 +0014: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0014: jump_if_no_match 00003 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0017: jump 00000 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0020: jump_if_no_match 00039 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0023: ***accessing keyword: base :print! stack depth: 1 +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0025: resolving binding `base` in print! +locals: args@0//0 +0027: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0027: as enclosing upvalue 0 +0029: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0029: get_upvalue 000 +0031: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0031: constant 00000: :print! +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|#{:get fn get/base, ...|:print!] (_,_,_,_,_,_,_,_) +0034: get_key +0035: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|fn print!/base] (_,_,_,_,_,_,_,_) +0035: ***after keyword access stack depth: 2 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|fn print!/base] (_,_,_,_,_,_,_,_) +0037: store +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (fn print!/base,_,_,_,_,_,_,_) +0038: resolving binding `args` in print! +locals: args@0//0 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (fn print!/base,_,_,_,_,_,_,_) +0040: at locals position 0 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (fn print!/base,_,_,_,_,_,_,_) +0042: push_binding 000 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|["extracted 0 and 0,...] (fn print!/base,_,_,_,_,_,_,_) +0044: load +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|["extracted 0 and 0,...|fn print!/base] (_,_,_,_,_,_,_,_) +0045: call 001 +=== calling into fn print!/base/1 === +"extracted 0 and 0, 0 from state" +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|:ok] (_,_,_,_,_,_,_,_) +0047: pop +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (_,_,_,_,_,_,_,_) +0048: constant 00001: :ok +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|:ok] (_,_,_,_,_,_,_,_) +0051: store +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (:ok,_,_,_,_,_,_,_) +0052: leaving scope 1 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (:ok,_,_,_,_,_,_,_) +0054: ***leaving block before pop stack depth: 1 +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (:ok,_,_,_,_,_,_,_) +0056: popping back from 1 to 1 +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (:ok,_,_,_,_,_,_,_) +0058: load +0059: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-|:ok] (_,_,_,_,_,_,_,_) +0059: store +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->["extracted 0 and 0,...<-] (:ok,_,_,_,_,_,_,_) +0060: pop +0061: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (:ok,_,_,_,_,_,_,_) +0061: return +== returning from fn print! == +0249: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|:ok] (_,_,_,_,_,_,_,_) +0249: pop +0250: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0250: ***before let binding stack depth: 8 +0252: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0252: ***calling function heading/vector stack depth: 8 +0254: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0254: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0256: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0256: at locals position 6 +0258: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0258: push_binding 006 +0260: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0] (_,_,_,_,_,_,_,_) +0260: resolving binding `heading/vector` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2 +0262: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0] (_,_,_,_,_,_,_,_) +0262: as global +0264: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0] (_,_,_,_,_,_,_,_) +0264: constant 00012: :heading/vector +0267: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|:heading/vector] (_,_,_,_,_,_,_,_) +0267: push_global +0268: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|fn heading/vector] (_,_,_,_,_,_,_,_) +0268: ***after 1 args stack depth: 10 +0270: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|fn heading/vector] (_,_,_,_,_,_,_,_) +0270: call 001 +=== calling into fn heading/vector/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) 0000: reset_match -0001: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (false) -0003: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (heading) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) 0003: match_depth 000 -0005: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0005: match_false -0006: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0006: jump_if_no_match 00003 -0009: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0009: jump 00000 -0012: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0012: jump_if_no_match 00004 -0015: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (_,_,_,_,_,_,_,_) -0015: true -0016: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-|true] (_,_,_,_,_,_,_,_) -0016: store -0017: [3|false|:bar|fn not|[2, 3]|2|[3]|->false<-] (true,_,_,_,_,_,_,_) -0017: pop -0018: [3|false|:bar|fn not|[2, 3]|2|[3]] (true,_,_,_,_,_,_,_) -0018: return -== returning from fn not == -0584: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|true] (_,_,_,_,_,_,_,_) -0584: ***after condition stack depth: 8 -0586: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|true] (_,_,_,_,_,_,_,_) -0586: jump_if_false 00034 -0589: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0589: ***recur: before args stack depth: 7 -0591: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0591: recur arg: 0 -0593: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0593: resolving binding `ys` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1|ys@6//1 -0595: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0595: at locals position 6 -0597: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] (_,_,_,_,_,_,_,_) -0597: push_binding 006 -0599: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|[3]] (_,_,_,_,_,_,_,_) -0599: ***recur: after args stack depth: 8 -0601: [->3<-|false|:bar|fn not|[2, 3]|2|[3]|[3]] (_,_,_,_,_,_,_,_) -0601: store_n 001 -0603: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] ([3],_,_,_,_,_,_,_) -0603: ***recur: after store stack depth: 7 -0605: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] ([3],_,_,_,_,_,_,_) -0605: loop root depth: 4 -0607: [->3<-|false|:bar|fn not|[2, 3]|2|[3]] ([3],_,_,_,_,_,_,_) -0607: pop_n 003 -0609: [->3<-|false|:bar|fn not] ([3],_,_,_,_,_,_,_) -0609: ***recur: after stack reset stack depth: 4 -0611: [->3<-|false|:bar|fn not] ([3],_,_,_,_,_,_,_) -0611: load_n 001 -0613: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0613: ***recur: after load, end of compilation stack depth: 5 -0615: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0615: jump_back 00237 -0378: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0378: ***loop: after load stack depth: 5 -0380: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0380: reset_match -0381: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0381: ***loop clause matching: : ([]) -0383: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0383: match_depth 000 -0385: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0385: match_list 000 -0387: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0387: jump_if_no_match 00006 -0396: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0396: jump_if_no_match 00016 -0415: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0415: ***loop: after load stack depth: 5 -0417: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0417: reset_match -0418: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0418: ***loop clause matching: : ([y]) -0420: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0420: match_depth 000 -0422: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0422: match_list 001 -0424: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0424: jump_if_no_match 00020 -0427: [->3<-|false|:bar|fn not|[3]] (_,_,_,_,_,_,_,_) -0427: load_list -0428: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0428: match_depth 000 -0430: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0430: match -0431: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0431: binding `y` in sandbox -0433: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0433: stack depth: 6; match depth: 0 -0435: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0435: at stack index: 5 -0437: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0437: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0439: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0439: jump_if_no_match 00004 -0442: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0442: jump 00002 -0447: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0447: jump_if_no_match 00044 -0450: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0450: ***loop: before body stack depth: 6 -0452: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0452: ***calling function eq? stack depth: 6 -0454: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0454: resolving binding `y` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0456: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0456: at locals position 5 -0458: [->3<-|false|:bar|fn not|[3]|3] (_,_,_,_,_,_,_,_) -0458: push_binding 005 -0460: [->3<-|false|:bar|fn not|[3]|3|3] (_,_,_,_,_,_,_,_) -0460: resolving binding `test` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0462: [->3<-|false|:bar|fn not|[3]|3|3] (_,_,_,_,_,_,_,_) -0462: at locals position 0 -0464: [->3<-|false|:bar|fn not|[3]|3|3] (_,_,_,_,_,_,_,_) -0464: push_binding 000 -0466: [->3<-|false|:bar|fn not|[3]|3|3|3] (_,_,_,_,_,_,_,_) -0466: resolving binding `eq?` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|y@5//1 -0468: [->3<-|false|:bar|fn not|[3]|3|3|3] (_,_,_,_,_,_,_,_) -0468: as global -0470: [->3<-|false|:bar|fn not|[3]|3|3|3] (_,_,_,_,_,_,_,_) -0470: constant 00003: :eq? -0473: [->3<-|false|:bar|fn not|[3]|3|3|3|:eq?] (_,_,_,_,_,_,_,_) -0473: push_global -0474: [->3<-|false|:bar|fn not|[3]|3|3|3|fn eq?] (_,_,_,_,_,_,_,_) -0474: ***after 2 args stack depth: 9 -0476: [->3<-|false|:bar|fn not|[3]|3|3|3|fn eq?] (_,_,_,_,_,_,_,_) -0476: call 002 -=== calling into fn eq?/2 === -0000: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0000: reset_match -0001: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0001: ***function clause matching: : (x, y) -0003: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0003: match_depth 001 -0005: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) 0005: match -0006: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0006: binding `x` in eq? -0008: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0008: stack depth: 2; match depth: 1 -0010: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) +0006: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0006: binding `heading` in heading/vector +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0008: stack depth: 1; match depth: 0 +0010: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) 0010: at stack index: 0 -0012: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0012: new locals: x@0//0 -0014: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0014: jump_if_no_match 00017 -0017: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0017: match_depth 000 -0019: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0019: match -0020: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0020: binding `y` in eq? -0022: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0022: stack depth: 2; match depth: 0 -0024: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0024: at stack index: 1 -0026: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0026: new locals: x@0//0|y@1//0 -0028: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0028: jump_if_no_match 00003 -0031: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0031: jump 00000 -0034: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0034: jump_if_no_match 00034 -0037: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0037: ***accessing keyword: base :eq? stack depth: 2 -0039: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0039: resolving binding `base` in eq? +0012: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0012: new locals: heading@0//0 +0014: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0014: jump_if_no_match 00003 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0017: jump 00000 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0020: jump_if_no_match 00104 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0023: ***before let binding stack depth: 1 +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0025: ***calling function add stack depth: 1 +0027: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0027: ***calling function neg stack depth: 1 +0029: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0029: resolving binding `heading` in heading/vector +locals: heading@0//0 +0031: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0031: at locals position 0 +0033: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] (_,_,_,_,_,_,_,_) +0033: push_binding 000 +0035: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0] (_,_,_,_,_,_,_,_) +0035: resolving binding `neg` in heading/vector +locals: heading@0//0 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0] (_,_,_,_,_,_,_,_) +0037: as enclosing upvalue 0 +0039: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0] (_,_,_,_,_,_,_,_) +0039: get_upvalue 000 +0041: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0|fn neg] (_,_,_,_,_,_,_,_) +0041: ***after 1 args stack depth: 3 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0|fn neg] (_,_,_,_,_,_,_,_) +0043: call 001 +=== calling into fn neg/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (n as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0009: binding `n` in neg +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0011: stack depth: 1; match depth: 0 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0015: new locals: n@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00003 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0020: jump 00000 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0023: jump_if_no_match 00024 +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0026: ***calling function mult stack depth: 1 +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0028: resolving binding `n` in neg +locals: n@0//0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0030: at locals position 0 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-] (_,_,_,_,_,_,_,_) +0032: push_binding 000 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0] (_,_,_,_,_,_,_,_) +0034: constant 00001: -1 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0|-1] (_,_,_,_,_,_,_,_) +0037: resolving binding `mult` in neg +locals: n@0//0 +0039: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0|-1] (_,_,_,_,_,_,_,_) +0039: as enclosing upvalue 0 +0041: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0|-1] (_,_,_,_,_,_,_,_) +0041: get_upvalue 000 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0|-1|fn mult] (_,_,_,_,_,_,_,_) +0043: ***after 2 args stack depth: 4 +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|0|-1|fn mult] (_,_,_,_,_,_,_,_) +0045: tail_call 002 +=== tail call into fn mult/2 from neg === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (x as :number, y as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0003: match_depth 001 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0009: binding `x` in mult +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0011: stack depth: 2; match depth: 1 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0015: new locals: x@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00020 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0020: match_depth 000 +0022: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0022: constant 00000: :number +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|:number] (_,_,_,_,_,_,_,_) +0025: match_type +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0026: binding `y` in mult +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0028: stack depth: 2; match depth: 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0030: at stack index: 1 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0032: new locals: x@0//0|y@1//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0034: jump_if_no_match 00003 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0037: jump 00000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0040: jump_if_no_match 00034 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0043: ***accessing keyword: base :mult stack depth: 2 +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0045: resolving binding `base` in mult locals: x@0//0|y@1//0 -0041: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0041: as enclosing upvalue 0 -0043: [3|false|:bar|fn not|[3]|3|->3<-|3] (_,_,_,_,_,_,_,_) -0043: get_upvalue 000 -0045: [3|false|:bar|fn not|[3]|3|->3<-|3|#{:trim fn trim/base...] (_,_,_,_,_,_,_,_) -0045: constant 00000: :eq? -0048: [3|false|:bar|fn not|[3]|3|->3<-|3|#{:trim fn trim/base...|:eq?] (_,_,_,_,_,_,_,_) -0048: get_key -0049: [3|false|:bar|fn not|[3]|3|->3<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0049: ***after keyword access stack depth: 3 -0051: [3|false|:bar|fn not|[3]|3|->3<-|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0051: stash -0052: [3|false|:bar|fn not|[3]|3|->3<-|3|fn eq?/base] (fn eq?/base,_,_,_,_,_,_,_) -0052: pop -0053: [3|false|:bar|fn not|[3]|3|->3<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0053: resolving binding `x` in eq? +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0047: as enclosing upvalue 0 +0049: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (_,_,_,_,_,_,_,_) +0049: get_upvalue 000 +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0051: constant 00001: :mult +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|#{:get fn get/base, ...|:mult] (_,_,_,_,_,_,_,_) +0054: get_key +0055: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|fn mult/base] (_,_,_,_,_,_,_,_) +0055: ***after keyword access stack depth: 3 +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|fn mult/base] (_,_,_,_,_,_,_,_) +0057: store +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (fn mult/base,_,_,_,_,_,_,_) +0058: resolving binding `x` in mult locals: x@0//0|y@1//0 -0055: [3|false|:bar|fn not|[3]|3|->3<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0055: at locals position 0 -0057: [3|false|:bar|fn not|[3]|3|->3<-|3] (fn eq?/base,_,_,_,_,_,_,_) -0057: push_binding 000 -0059: [3|false|:bar|fn not|[3]|3|->3<-|3|3] (fn eq?/base,_,_,_,_,_,_,_) -0059: resolving binding `y` in eq? +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (fn mult/base,_,_,_,_,_,_,_) +0060: at locals position 0 +0062: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (fn mult/base,_,_,_,_,_,_,_) +0062: push_binding 000 +0064: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|0] (fn mult/base,_,_,_,_,_,_,_) +0064: resolving binding `y` in mult locals: x@0//0|y@1//0 -0061: [3|false|:bar|fn not|[3]|3|->3<-|3|3] (fn eq?/base,_,_,_,_,_,_,_) -0061: at locals position 1 -0063: [3|false|:bar|fn not|[3]|3|->3<-|3|3] (fn eq?/base,_,_,_,_,_,_,_) -0063: push_binding 001 -0065: [3|false|:bar|fn not|[3]|3|->3<-|3|3|3] (fn eq?/base,_,_,_,_,_,_,_) -0065: load -0066: [3|false|:bar|fn not|[3]|3|->3<-|3|3|3|fn eq?/base] (_,_,_,_,_,_,_,_) -0066: tail_call 002 -=== tail call into fn eq?/base/2 from eq? === -0478: [->3<-|false|:bar|fn not|[3]|3|true] (_,_,_,_,_,_,_,_) -0478: ***loop: after body, before store stack depth: 7 -0480: [->3<-|false|:bar|fn not|[3]|3|true] (_,_,_,_,_,_,_,_) -0480: store -0481: [->3<-|false|:bar|fn not|[3]|3] (true,_,_,_,_,_,_,_) -0481: ***loop: after body, after store stack depth: 6 -0483: [->3<-|false|:bar|fn not|[3]|3] (true,_,_,_,_,_,_,_) -0483: leaving scope 1 -0485: [->3<-|false|:bar|fn not|[3]|3] (true,_,_,_,_,_,_,_) -0485: releasing binding Some(Binding { name: "y", depth: 1, stack_pos: 5 }) -0487: [->3<-|false|:bar|fn not|[3]|3] (true,_,_,_,_,_,_,_) -0487: ***resetting the stack after loop from 6 to 4 stack depth: 6 -0489: [->3<-|false|:bar|fn not|[3]|3] (true,_,_,_,_,_,_,_) -0489: pop_n 002 -0491: [->3<-|false|:bar|fn not] (true,_,_,_,_,_,_,_) -0491: jump 00149 -0643: [->3<-|false|:bar|fn not] (true,_,_,_,_,_,_,_) -0643: ***before loop arity adjustment stack depth: 5 -0645: [->3<-|false|:bar|fn not] (true,_,_,_,_,_,_,_) -0645: load -0646: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0646: ***at very end of loop after load stack depth: 5 -0648: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0648: ***after let expr stack depth: 5 -0650: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0650: ***let binding: matching: frob -0652: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0652: reset_match -0653: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0653: match -0654: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0654: binding `frob` in sandbox -0656: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0656: stack depth: 5; match depth: 0 -0658: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0658: at stack index: 4 -0660: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0660: new locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0662: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0662: panic_if_no_match -0663: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0663: ***after let binding stack depth: 5 -0665: [->3<-|false|:bar|fn not|true] (_,_,_,_,_,_,_,_) -0665: push_list -0666: [->3<-|false|:bar|fn not|true|[]] (_,_,_,_,_,_,_,_) -0666: resolving binding `quux` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0668: [->3<-|false|:bar|fn not|true|[]] (_,_,_,_,_,_,_,_) -0668: at locals position 1 -0670: [->3<-|false|:bar|fn not|true|[]] (_,_,_,_,_,_,_,_) -0670: push_binding 001 -0672: [->3<-|false|:bar|fn not|true|[]|false] (_,_,_,_,_,_,_,_) -0672: append_list -0673: [->3<-|false|:bar|fn not|true|[false]] (_,_,_,_,_,_,_,_) -0673: resolving binding `frob` in sandbox -locals: test@0//0|quux@1//0|foo@2//0|not@3//0|frob@4//0 -0675: [->3<-|false|:bar|fn not|true|[false]] (_,_,_,_,_,_,_,_) -0675: at locals position 4 -0677: [->3<-|false|:bar|fn not|true|[false]] (_,_,_,_,_,_,_,_) -0677: push_binding 004 -0679: [->3<-|false|:bar|fn not|true|[false]|true] (_,_,_,_,_,_,_,_) -0679: append_list -0680: [->3<-|false|:bar|fn not|true|[false, true]] (_,_,_,_,_,_,_,_) -0680: store -0681: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0681: leaving scope 0 -0683: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0683: releasing binding Some(Binding { name: "frob", depth: 0, stack_pos: 4 }) -0685: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0685: releasing binding Some(Binding { name: "not", depth: 0, stack_pos: 3 }) -0687: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0687: releasing binding Some(Binding { name: "foo", depth: 0, stack_pos: 2 }) -0689: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0689: releasing binding Some(Binding { name: "quux", depth: 0, stack_pos: 1 }) -0691: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0691: releasing binding Some(Binding { name: "test", depth: 0, stack_pos: 0 }) -0693: [->3<-|false|:bar|fn not|true] ([false, true],_,_,_,_,_,_,_) -0693: pop_n 005 -0695: [] ([false, true],_,_,_,_,_,_,_) -0695: load -0696: [] (_,_,_,_,_,_,_,_) -[false, true] +0066: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|0] (fn mult/base,_,_,_,_,_,_,_) +0066: at locals position 1 +0068: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|0] (fn mult/base,_,_,_,_,_,_,_) +0068: push_binding 001 +0070: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|0|-1] (fn mult/base,_,_,_,_,_,_,_) +0070: load +0071: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|0|-1|fn mult/base] (_,_,_,_,_,_,_,_) +0071: tail_call 002 +=== tail call into fn mult/base/2 from mult === +0073: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1|-0] (_,_,_,_,_,_,_,_) +0073: store +0074: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->0<-|-1] (-0,_,_,_,_,_,_,_) +0074: pop_n 002 +0076: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0] (-0,_,_,_,_,_,_,_) +0076: return +== returning from fn mult == +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0] (_,_,_,_,_,_,_,_) +0045: constant 00000: 0.25 +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0|0.25] (_,_,_,_,_,_,_,_) +0048: resolving binding `add` in heading/vector +locals: heading@0//0 +0050: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0|0.25] (_,_,_,_,_,_,_,_) +0050: as enclosing upvalue 1 +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0|0.25] (_,_,_,_,_,_,_,_) +0052: get_upvalue 001 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0|0.25|fn add] (_,_,_,_,_,_,_,_) +0054: ***after 2 args stack depth: 4 +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|-0|0.25|fn add] (_,_,_,_,_,_,_,_) +0056: call 002 +=== calling into fn add/2 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (x as :number, y as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0003: match_depth 001 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0009: binding `x` in add +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0011: stack depth: 2; match depth: 1 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0015: new locals: x@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00020 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0020: match_depth 000 +0022: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0022: constant 00000: :number +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|:number] (_,_,_,_,_,_,_,_) +0025: match_type +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0026: binding `y` in add +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0028: stack depth: 2; match depth: 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0030: at stack index: 1 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0032: new locals: x@0//0|y@1//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0034: jump_if_no_match 00003 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0037: jump 00000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0040: jump_if_no_match 00034 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0043: ***accessing keyword: base :add stack depth: 2 +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0045: resolving binding `base` in add +locals: x@0//0|y@1//0 +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0047: as enclosing upvalue 0 +0049: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (_,_,_,_,_,_,_,_) +0049: get_upvalue 000 +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0051: constant 00001: :add +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|#{:get fn get/base, ...|:add] (_,_,_,_,_,_,_,_) +0054: get_key +0055: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|fn add/base] (_,_,_,_,_,_,_,_) +0055: ***after keyword access stack depth: 3 +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|fn add/base] (_,_,_,_,_,_,_,_) +0057: store +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (fn add/base,_,_,_,_,_,_,_) +0058: resolving binding `x` in add +locals: x@0//0|y@1//0 +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (fn add/base,_,_,_,_,_,_,_) +0060: at locals position 0 +0062: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (fn add/base,_,_,_,_,_,_,_) +0062: push_binding 000 +0064: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|-0] (fn add/base,_,_,_,_,_,_,_) +0064: resolving binding `y` in add +locals: x@0//0|y@1//0 +0066: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|-0] (fn add/base,_,_,_,_,_,_,_) +0066: at locals position 1 +0068: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|-0] (fn add/base,_,_,_,_,_,_,_) +0068: push_binding 001 +0070: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|-0|0.25] (fn add/base,_,_,_,_,_,_,_) +0070: load +0071: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|-0|0.25|fn add/base] (_,_,_,_,_,_,_,_) +0071: tail_call 002 +=== tail call into fn add/base/2 from add === +0073: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25|0.25] (_,_,_,_,_,_,_,_) +0073: store +0074: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|->-0<-|0.25] (0.25,_,_,_,_,_,_,_) +0074: pop_n 002 +0076: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0] (0.25,_,_,_,_,_,_,_) +0076: return +== returning from fn add == +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0058: ***after let expr stack depth: 2 +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0060: ***let binding: matching: a +0062: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0062: reset_match +0063: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0063: match +0064: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0064: binding `a` in heading/vector +0066: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0066: stack depth: 2; match depth: 0 +0068: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0068: at stack index: 1 +0070: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0070: new locals: heading@0//0|a@1//1 +0072: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0072: panic_if_no_match +0073: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0073: ***after let binding stack depth: 2 +0075: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0075: ***calling function cos stack depth: 2 +0077: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0077: resolving binding `a` in heading/vector +locals: heading@0//0|a@1//1 +0079: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0079: at locals position 1 +0081: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] (_,_,_,_,_,_,_,_) +0081: push_binding 001 +0083: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.25] (_,_,_,_,_,_,_,_) +0083: resolving binding `cos` in heading/vector +locals: heading@0//0|a@1//1 +0085: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.25] (_,_,_,_,_,_,_,_) +0085: as enclosing upvalue 2 +0087: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.25] (_,_,_,_,_,_,_,_) +0087: get_upvalue 002 +0089: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.25|fn cos] (_,_,_,_,_,_,_,_) +0089: ***after 1 args stack depth: 4 +0091: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.25|fn cos] (_,_,_,_,_,_,_,_) +0091: call 001 +=== calling into fn cos/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (a as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0009: binding `a` in cos +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0011: stack depth: 1; match depth: 0 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0015: new locals: a@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00003 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0020: jump 00000 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0023: jump_if_no_match 00033 +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0026: resolving binding `a` in cos +locals: a@0//0 +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0028: at locals position 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0030: push_binding 000 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0032: resolving binding `turn/rad` in cos +locals: a@0//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0034: as enclosing upvalue 0 +0036: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0036: get_upvalue 000 +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|0.25|fn turn/rad] (_,_,_,_,_,_,_,_) +0038: call 001 +=== calling into fn turn/rad/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (a as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0009: binding `a` in turn/rad +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0011: stack depth: 1; match depth: 0 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0015: new locals: a@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00003 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0020: jump 00000 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0023: jump_if_no_match 00027 +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0026: ***calling function mult stack depth: 1 +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0028: resolving binding `a` in turn/rad +locals: a@0//0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0030: at locals position 0 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0032: push_binding 000 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0034: resolving binding `tau` in turn/rad +locals: a@0//0 +0036: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0036: as enclosing upvalue 0 +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0038: get_upvalue 000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0040: resolving binding `mult` in turn/rad +locals: a@0//0 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0042: as enclosing upvalue 1 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0044: get_upvalue 001 +0046: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25|6.283185307179586|fn mult] (_,_,_,_,_,_,_,_) +0046: ***after 2 args stack depth: 4 +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|0.25|6.283185307179586|fn mult] (_,_,_,_,_,_,_,_) +0048: tail_call 002 +=== tail call into fn mult/2 from turn/rad === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (x as :number, y as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0003: match_depth 001 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0009: binding `x` in mult +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0011: stack depth: 2; match depth: 1 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0015: new locals: x@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00020 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0020: match_depth 000 +0022: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0022: constant 00000: :number +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|:number] (_,_,_,_,_,_,_,_) +0025: match_type +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0026: binding `y` in mult +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0028: stack depth: 2; match depth: 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0030: at stack index: 1 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0032: new locals: x@0//0|y@1//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0034: jump_if_no_match 00003 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0037: jump 00000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0040: jump_if_no_match 00034 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0043: ***accessing keyword: base :mult stack depth: 2 +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0045: resolving binding `base` in mult +locals: x@0//0|y@1//0 +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0047: as enclosing upvalue 0 +0049: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0049: get_upvalue 000 +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0051: constant 00001: :mult +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|#{:get fn get/base, ...|:mult] (_,_,_,_,_,_,_,_) +0054: get_key +0055: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0055: ***after keyword access stack depth: 3 +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0057: store +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0058: resolving binding `x` in mult +locals: x@0//0|y@1//0 +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0060: at locals position 0 +0062: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0062: push_binding 000 +0064: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0064: resolving binding `y` in mult +locals: x@0//0|y@1//0 +0066: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0066: at locals position 1 +0068: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0068: push_binding 001 +0070: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|0.25|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0070: load +0071: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|0.25|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0071: tail_call 002 +=== tail call into fn mult/base/2 from mult === +0073: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586|1.5707963267948966] (_,_,_,_,_,_,_,_) +0073: store +0074: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25|->0.25<-|6.283185307179586] (1.5707963267948966,_,_,_,_,_,_,_) +0074: pop_n 002 +0076: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.25] (1.5707963267948966,_,_,_,_,_,_,_) +0076: return +== returning from fn mult == +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0040: ***accessing keyword: base :cos stack depth: 2 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0042: resolving binding `base` in cos +locals: a@0//0 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0044: as enclosing upvalue 1 +0046: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0046: get_upvalue 001 +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0048: constant 00001: :cos +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966|#{:get fn get/base, ...|:cos] (_,_,_,_,_,_,_,_) +0051: get_key +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966|fn cos/base] (_,_,_,_,_,_,_,_) +0052: ***after keyword access stack depth: 3 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|1.5707963267948966|fn cos/base] (_,_,_,_,_,_,_,_) +0054: tail_call 001 +=== tail call into fn cos/base/1 from cos === +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-|0.000000000000000061...] (_,_,_,_,_,_,_,_) +0056: store +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|->0.25<-] (0.00000000000000006123233995736766,_,_,_,_,_,_,_) +0057: pop +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25] (0.00000000000000006123233995736766,_,_,_,_,_,_,_) +0058: return +== returning from fn cos == +0093: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...] (_,_,_,_,_,_,_,_) +0093: ***calling function sin stack depth: 3 +0095: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...] (_,_,_,_,_,_,_,_) +0095: resolving binding `a` in heading/vector +locals: heading@0//0|a@1//1 +0097: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...] (_,_,_,_,_,_,_,_) +0097: at locals position 1 +0099: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...] (_,_,_,_,_,_,_,_) +0099: push_binding 001 +0101: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|0.25] (_,_,_,_,_,_,_,_) +0101: resolving binding `sin` in heading/vector +locals: heading@0//0|a@1//1 +0103: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|0.25] (_,_,_,_,_,_,_,_) +0103: as enclosing upvalue 3 +0105: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|0.25] (_,_,_,_,_,_,_,_) +0105: get_upvalue 003 +0107: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|0.25|fn sin] (_,_,_,_,_,_,_,_) +0107: ***after 1 args stack depth: 5 +0109: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|0.25|fn sin] (_,_,_,_,_,_,_,_) +0109: call 001 +=== calling into fn sin/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (a as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0009: binding `a` in sin +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0011: stack depth: 1; match depth: 0 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0015: new locals: a@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00003 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0020: jump 00000 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0023: jump_if_no_match 00033 +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0026: resolving binding `a` in sin +locals: a@0//0 +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0028: at locals position 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (_,_,_,_,_,_,_,_) +0030: push_binding 000 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0032: resolving binding `turn/rad` in sin +locals: a@0//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0034: as enclosing upvalue 0 +0036: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0036: get_upvalue 000 +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|0.25|fn turn/rad] (_,_,_,_,_,_,_,_) +0038: call 001 +=== calling into fn turn/rad/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (a as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0009: binding `a` in turn/rad +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0011: stack depth: 1; match depth: 0 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0015: new locals: a@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00003 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0020: jump 00000 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0023: jump_if_no_match 00027 +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0026: ***calling function mult stack depth: 1 +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0028: resolving binding `a` in turn/rad +locals: a@0//0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0030: at locals position 0 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-] (_,_,_,_,_,_,_,_) +0032: push_binding 000 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0034: resolving binding `tau` in turn/rad +locals: a@0//0 +0036: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0036: as enclosing upvalue 0 +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25] (_,_,_,_,_,_,_,_) +0038: get_upvalue 000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0040: resolving binding `mult` in turn/rad +locals: a@0//0 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0042: as enclosing upvalue 1 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25|6.283185307179586] (_,_,_,_,_,_,_,_) +0044: get_upvalue 001 +0046: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25|6.283185307179586|fn mult] (_,_,_,_,_,_,_,_) +0046: ***after 2 args stack depth: 4 +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|0.25|6.283185307179586|fn mult] (_,_,_,_,_,_,_,_) +0048: tail_call 002 +=== tail call into fn mult/2 from turn/rad === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (x as :number, y as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0003: match_depth 001 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0009: binding `x` in mult +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0011: stack depth: 2; match depth: 1 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0015: new locals: x@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00020 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0020: match_depth 000 +0022: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0022: constant 00000: :number +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|:number] (_,_,_,_,_,_,_,_) +0025: match_type +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0026: binding `y` in mult +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0028: stack depth: 2; match depth: 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0030: at stack index: 1 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0032: new locals: x@0//0|y@1//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0034: jump_if_no_match 00003 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0037: jump 00000 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0040: jump_if_no_match 00034 +0043: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0043: ***accessing keyword: base :mult stack depth: 2 +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0045: resolving binding `base` in mult +locals: x@0//0|y@1//0 +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0047: as enclosing upvalue 0 +0049: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (_,_,_,_,_,_,_,_) +0049: get_upvalue 000 +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0051: constant 00001: :mult +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|#{:get fn get/base, ...|:mult] (_,_,_,_,_,_,_,_) +0054: get_key +0055: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0055: ***after keyword access stack depth: 3 +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0057: store +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0058: resolving binding `x` in mult +locals: x@0//0|y@1//0 +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0060: at locals position 0 +0062: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0062: push_binding 000 +0064: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0064: resolving binding `y` in mult +locals: x@0//0|y@1//0 +0066: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0066: at locals position 1 +0068: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|0.25] (fn mult/base,_,_,_,_,_,_,_) +0068: push_binding 001 +0070: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|0.25|6.283185307179586] (fn mult/base,_,_,_,_,_,_,_) +0070: load +0071: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|0.25|6.283185307179586|fn mult/base] (_,_,_,_,_,_,_,_) +0071: tail_call 002 +=== tail call into fn mult/base/2 from mult === +0073: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586|1.5707963267948966] (_,_,_,_,_,_,_,_) +0073: store +0074: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25|->0.25<-|6.283185307179586] (1.5707963267948966,_,_,_,_,_,_,_) +0074: pop_n 002 +0076: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|0.25] (1.5707963267948966,_,_,_,_,_,_,_) +0076: return +== returning from fn mult == +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0040: ***accessing keyword: base :sin stack depth: 2 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0042: resolving binding `base` in sin +locals: a@0//0 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0044: as enclosing upvalue 1 +0046: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966] (_,_,_,_,_,_,_,_) +0046: get_upvalue 001 +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0048: constant 00001: :sin +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966|#{:get fn get/base, ...|:sin] (_,_,_,_,_,_,_,_) +0051: get_key +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966|fn sin/base] (_,_,_,_,_,_,_,_) +0052: ***after keyword access stack depth: 3 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1.5707963267948966|fn sin/base] (_,_,_,_,_,_,_,_) +0054: tail_call 001 +=== tail call into fn sin/base/1 from sin === +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-|1] (_,_,_,_,_,_,_,_) +0056: store +0057: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...|->0.25<-] (1,_,_,_,_,_,_,_) +0057: pop +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|0|0.25|0.000000000000000061...] (1,_,_,_,_,_,_,_) +0058: return +== returning from fn sin == +0111: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|0.000000000000000061...|1] (_,_,_,_,_,_,_,_) +0111: push_tuple 002 +0113: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0113: store +0114: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0114: leaving scope 1 +0116: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0116: releasing binding a@1//1 +0118: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0118: ***leaving block before pop stack depth: 2 +0120: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0120: popping back from 2 to 1 +0122: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|0.25] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0122: pop +0123: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0123: load +0124: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0124: store +0125: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|->0<-] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0125: pop +0126: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}] ((0.00000000000000006123233995736766, 1),_,_,_,_,_,_,_) +0126: return +== returning from fn heading/vector == +0272: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0272: ***after let expr stack depth: 9 +0274: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0274: ***let binding: matching: unit +0276: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0276: reset_match +0277: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0277: match +0278: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0278: binding `unit` in sandbox +0280: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0280: stack depth: 9; match depth: 0 +0282: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0282: at stack index: 8 +0284: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0284: new locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0286: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0286: panic_if_no_match +0287: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0287: ***after let binding stack depth: 9 +0289: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0289: ***calling function print! stack depth: 9 +0291: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0291: empty_string +0292: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|""] (_,_,_,_,_,_,_,_) +0292: constant 00013: "unit vector at " +0295: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|""|"unit vector at "] (_,_,_,_,_,_,_,_) +0295: concat_strings +0296: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at "] (_,_,_,_,_,_,_,_) +0296: resolving binding `heading` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0298: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at "] (_,_,_,_,_,_,_,_) +0298: at locals position 6 +0300: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at "] (_,_,_,_,_,_,_,_) +0300: push_binding 006 +0302: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at "|0] (_,_,_,_,_,_,_,_) +0302: stringify +0303: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at "|"0"] (_,_,_,_,_,_,_,_) +0303: concat_strings +0304: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0"] (_,_,_,_,_,_,_,_) +0304: constant 00014: ": " +0307: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0"|": "] (_,_,_,_,_,_,_,_) +0307: concat_strings +0308: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: "] (_,_,_,_,_,_,_,_) +0308: resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0310: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: "] (_,_,_,_,_,_,_,_) +0310: at locals position 8 +0312: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: "] (_,_,_,_,_,_,_,_) +0312: push_binding 008 +0314: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: "|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0314: stringify +0315: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: "|"pencolor white"] (_,_,_,_,_,_,_,_) +0315: concat_strings +0316: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...] (_,_,_,_,_,_,_,_) +0316: resolving binding `print!` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0318: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...] (_,_,_,_,_,_,_,_) +0318: as global +0320: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...] (_,_,_,_,_,_,_,_) +0320: constant 00008: :print! +0323: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...|:print!] (_,_,_,_,_,_,_,_) +0323: push_global +0324: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...|fn print!] (_,_,_,_,_,_,_,_) +0324: ***after 1 args stack depth: 11 +0326: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|"unit vector at 0: p...|fn print!] (_,_,_,_,_,_,_,_) +0326: call 001 +=== calling into fn print!/1 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (...args) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0003: match_depth 000 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0005: match +0006: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0006: binding `args` in print! +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0008: stack depth: 1; match depth: 0 +0010: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0010: at stack index: 0 +0012: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0012: new locals: args@0//0 +0014: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0014: jump_if_no_match 00003 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0017: jump 00000 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0020: jump_if_no_match 00039 +0023: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0023: ***accessing keyword: base :print! stack depth: 1 +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0025: resolving binding `base` in print! +locals: args@0//0 +0027: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0027: as enclosing upvalue 0 +0029: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0029: get_upvalue 000 +0031: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|#{:get fn get/base, ...] (_,_,_,_,_,_,_,_) +0031: constant 00000: :print! +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|#{:get fn get/base, ...|:print!] (_,_,_,_,_,_,_,_) +0034: get_key +0035: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|fn print!/base] (_,_,_,_,_,_,_,_) +0035: ***after keyword access stack depth: 2 +0037: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|fn print!/base] (_,_,_,_,_,_,_,_) +0037: store +0038: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (fn print!/base,_,_,_,_,_,_,_) +0038: resolving binding `args` in print! +locals: args@0//0 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (fn print!/base,_,_,_,_,_,_,_) +0040: at locals position 0 +0042: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (fn print!/base,_,_,_,_,_,_,_) +0042: push_binding 000 +0044: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|["unit vector at 0: ...] (fn print!/base,_,_,_,_,_,_,_) +0044: load +0045: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|["unit vector at 0: ...|fn print!/base] (_,_,_,_,_,_,_,_) +0045: call 001 +=== calling into fn print!/base/1 === +"unit vector at 0: pencolor white" +0047: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|:ok] (_,_,_,_,_,_,_,_) +0047: pop +0048: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (_,_,_,_,_,_,_,_) +0048: constant 00001: :ok +0051: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|:ok] (_,_,_,_,_,_,_,_) +0051: store +0052: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (:ok,_,_,_,_,_,_,_) +0052: leaving scope 1 +0054: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (:ok,_,_,_,_,_,_,_) +0054: ***leaving block before pop stack depth: 1 +0056: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (:ok,_,_,_,_,_,_,_) +0056: popping back from 1 to 1 +0058: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (:ok,_,_,_,_,_,_,_) +0058: load +0059: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-|:ok] (_,_,_,_,_,_,_,_) +0059: store +0060: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->["unit vector at 0: ...<-] (:ok,_,_,_,_,_,_,_) +0060: pop +0061: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (:ok,_,_,_,_,_,_,_) +0061: return +== returning from fn print! == +0328: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|:ok] (_,_,_,_,_,_,_,_) +0328: pop +0329: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0329: ***before let binding stack depth: 9 +0331: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0331: ***calling function mult stack depth: 9 +0333: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0333: resolving binding `steps` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0335: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0335: at locals position 4 +0337: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...] (_,_,_,_,_,_,_,_) +0337: push_binding 004 +0339: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10] (_,_,_,_,_,_,_,_) +0339: resolving binding `unit` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0341: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10] (_,_,_,_,_,_,_,_) +0341: at locals position 8 +0343: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10] (_,_,_,_,_,_,_,_) +0343: push_binding 008 +0345: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0345: resolving binding `mult` in sandbox +locals: state@0//0|command@1//0|steps@4//1|heading@6//2|position@7//2|unit@8//2 +0347: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0347: as global +0349: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0349: constant 00015: :mult +0352: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}|:mult] (_,_,_,_,_,_,_,_) +0352: push_global +0353: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}|fn mult] (_,_,_,_,_,_,_,_) +0353: ***after 2 args stack depth: 12 +0355: [->#{:position (0, 0), ...<-|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|10|#{:pencolor :white}|fn mult] (_,_,_,_,_,_,_,_) +0355: call 002 +=== calling into fn mult/2 === +0000: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0000: reset_match +0001: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0001: ***function clause matching: : (x as :number, y as :number) +0003: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0003: match_depth 001 +0005: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0005: constant 00000: :number +0008: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}|:number] (_,_,_,_,_,_,_,_) +0008: match_type +0009: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0009: binding `x` in mult +0011: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0011: stack depth: 2; match depth: 1 +0013: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0013: at stack index: 0 +0015: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0015: new locals: x@0//0 +0017: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0017: jump_if_no_match 00020 +0020: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0020: match_depth 000 +0022: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0022: constant 00000: :number +0025: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}|:number] (_,_,_,_,_,_,_,_) +0025: match_type +0026: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0026: binding `y` in mult +0028: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0028: stack depth: 2; match depth: 0 +0030: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0030: at stack index: 1 +0032: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0032: new locals: x@0//0|y@1//0 +0034: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0034: jump_if_no_match 00003 +0040: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0040: jump_if_no_match 00034 +0077: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0077: ***function clause matching: : (scalar as :number, (x, y)) +0079: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0079: match_depth 001 +0081: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0081: constant 00000: :number +0084: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}|:number] (_,_,_,_,_,_,_,_) +0084: match_type +0085: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0085: binding `scalar` in mult +0087: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0087: stack depth: 2; match depth: 1 +0089: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0089: at stack index: 0 +0091: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0091: new locals: scalar@0//0 +0093: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0093: jump_if_no_match 00047 +0096: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0096: match_depth 000 +0098: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0098: match_tuple 002 +0100: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0100: jump_if_no_match 00034 +0137: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0137: jump_if_no_match 00003 +0143: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0143: jump_if_no_match 00054 +0200: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0200: ***function clause matching: : ((x, y), scalar as :number) +0202: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0202: match_depth 001 +0204: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0204: match_tuple 002 +0206: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0206: jump_if_no_match 00034 +0243: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0243: jump_if_no_match 00020 +0266: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0266: jump_if_no_match 00036 +0305: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +0305: panic_no_match +0305: [#{:position (0, 0), ...|(:forward, 10)|(:forward, 10)|:forward|10|#{:position (0, 0), ...|0|(0, 0)|#{:pencolor :white}|(0.00000000000000006...|->10<-|#{:pencolor :white}] (_,_,_,_,_,_,_,_) +Ludus panicked! no match +Panic traceback: + calling fn mult + from user script diff --git a/src/compiler.rs b/src/compiler.rs index a66ece8..e461456 100644 --- a/src/compiler.rs +++ b/src/compiler.rs @@ -717,6 +717,7 @@ impl<'a> Compiler<'a> { // drop every value in the pattern self.emit_op(Op::PushBinding); self.emit_byte(dict_stack_pos); + self.stack_depth += 1; for pair in pairs.iter().take(pairs_len) { let (PairPattern(key, _), _) = pair else {