a flavor of apl, i understand?
resources
notes from eris' k class
operator precedence: always from right to left.
types:
- integer (list of)
- float (list of)
- character (list of/string)
- dictionary (list of/table)
- symbol (list of)
lists are enclosed between parenthesis, and items separated with semicolons
(1;2;3) ("a";"b";"c")
equivalent to:
1 2 3 "abc"
assignment is done with :
a: 1 b: 1 2 3
verbs
minus sign (-), unary is negate, binary is subtraction:
- 1 2 3 result -1 -2 -3 2 - 1 result 1
plus sign (+), binary is addition:
1 + 2 result 3
asterisk (*), unary is "first", binary is multiplication
2 * 3 result 6 * 3 2 1 result 3
vertical bar (|), unary is reverse, binary is mod?
|1 2 3 result 3 2 1
with colon (:) one can force the use of the unary mode, e.g.
*: 3 2 1
exclamation mark (!) applied to an integer produces the natural numbers from 0 to that integer minus one:
!5 result 0 1 2 3 4
percent sign (%) is division