Are you interested in following the discussions and latest development of Pico (scions)?
Find out how to subscribe to our mailing list.
One of the most frequently made errors in Pico is made by Scheme or Lisp programmers.
test-variable:1
This is not a definition of a variable, but a redefinition of the substraction operator with two formal arguments: test and variable.
In the same way,
test-function(x):x
is not the definition of a function, but a redefinition of the substraction operator with test and function(x) as the formal arguments.
In Pico, words in identifiers are separated by underscores!
In Pico the semantics of ":" means to add something to the dictionary. This means that the following interaction with the transcript
x:1
f():x
x:3
f()
will yield 1! This can lead to subtle errors. If you encounter weird errors, and you think this might be the cause, just reset Pico and evaluate your pogram anew.