- Installing
- Hello World
- Spaces
- Identation
- Basics
- Comments
- Output
- ++ method
- Assignments and types
- Operator Precedence
- String interpolation
- Input
- Simple arithmetic
- Multiline strings
- Assert
- Arrays and literal arrays
- Literal intervals
- If, for, while and repeat-until
- Message sends
- Conversion between basic type values
- Anonymous functions
- Evaluating an anonymous function
- Functions with method foreach
- Prototypes
- Packages
- Gradual typing
- Generic prototypes
- Important metaobjects
- The CyanInterpreter prototype
Operator precedence
The precedence of methods and operators in Cyan is as follows. The first ones in the list have lower precedence.
|| ~|| && => ==> ! == <= < > >= != === !== <=> ~= non-unary message passing |> ++ -- (binary) .. ..< + - / * % ||| ~| & <.< >.> >.>> .* .+ .% unary message passing + - ! ~ (unary)
The expression
(stack asList get: i*2 + 1) < y + 2 && ! ok
will be considered as if it was
(((stack asList) get: ((i*2) + 1)) < (y + 2)) && (! ok)