11-30-2020, 03:21 PM
Thanks for clarifying how remember works.
The other two questions are about how long the values persist: for (remember... I assume it is indefinitely until they are forgotten.
For (set Var <int>) i remember mention that it persists just within one move and into that move's (then clause -- is that correct? Can you clarify exactly when the value is released?
With the new named (set Var "string" <int>) are the rules the same, or do they persist until set again. Can they be set in (start ... as well as (play ...
Further, what happens if a value is tested before it is set?
-----------------------
This raises the questions
How do operators on values/sets-of-values react to null sets and null values that might occur during evaluation eg counting the distance in steps between two sites from a null list, or where one is off the board, or as in (sites LineOfSite Piece). or finding a list of sites at distance -1 (not found), etc...
eg are any of these allowed? Whether allowed or not, are any true, are any false, any null, any runtime error, any compiler error:
(= <null> 1)
(= <null> 0)
(= <null> -1)
(= 1 <null>)
(= 0 <null>)
(= -1 <null>)
(= <null> <null>)
(!= <null> 1)
(!= <null> 0)
(!= <null> -1)
(!= 1 <null>)
(!= 0 <null>)
(!= -1 <null>)
(!= <null> <null>)
Perhaps the answers are already in the new documentation, and you can guide me to them, or if not update it and guide me to them, as answering here might got lost.
The other two questions are about how long the values persist: for (remember... I assume it is indefinitely until they are forgotten.
For (set Var <int>) i remember mention that it persists just within one move and into that move's (then clause -- is that correct? Can you clarify exactly when the value is released?
With the new named (set Var "string" <int>) are the rules the same, or do they persist until set again. Can they be set in (start ... as well as (play ...
Further, what happens if a value is tested before it is set?
-----------------------
This raises the questions
How do operators on values/sets-of-values react to null sets and null values that might occur during evaluation eg counting the distance in steps between two sites from a null list, or where one is off the board, or as in (sites LineOfSite Piece). or finding a list of sites at distance -1 (not found), etc...
eg are any of these allowed? Whether allowed or not, are any true, are any false, any null, any runtime error, any compiler error:
(= <null> 1)
(= <null> 0)
(= <null> -1)
(= 1 <null>)
(= 0 <null>)
(= -1 <null>)
(= <null> <null>)
(!= <null> 1)
(!= <null> 0)
(!= <null> -1)
(!= 1 <null>)
(!= 0 <null>)
(!= -1 <null>)
(!= <null> <null>)
Perhaps the answers are already in the new documentation, and you can guide me to them, or if not update it and guide me to them, as answering here might got lost.