| • Science | • People | • Locations | • Timeline |
| Contents | ||
Pico can be seen as an effort to generate a palatable and enjoyable language for people who don't want to study hard for the elegance and power of a language. They've done it by adapting Scheme's semantics.
While designing Pico, the PROG lab was inspired by the Abelson and Sussman's book "Structure and Interpretation of Computer Programs". Furthermore they were influenced by the teaching of programming at high school or academic level.
Pico should be interpreted as 'small', the idea was to create a small language for educational purposes.
Comments are surrounded by a backquote (`).
Functions are first-class objects in Pico. They can be assigned to variables. For example a function with two arguments arg1 and arg2 can be defined as
func(arg1, arg2): ...Functions can be called with the following syntax:
func(value1, value2)Operators can be used as prefix or infix in Pico:
+(5, 2) 5 + 2Pico has the following types: string, integer, real and tables.
It does not have a native char type, so users should resort to size 1 strings.
Tables are compound datastructures that may contain any of the regular datatypes.
Boolean types are represented by functions, in the same way as lambda calculusThe lambda calculus is a formal system designed to investigate function definition, function application, and recursion. It was introduced by Alonzo Church and Stephen Cole Kleene in the 1930s; Church used the lambda calculus in 1936 to give a negative an does.
Only the usual if statement is included
if(condition, then, else)