The "Missing:"s below indicate that an entry is incomplete.
begin ... end (9) | block (grouping statements, especially when statements are not expressions) |
nothing needed | breaking lines (useful when end-of-line and/or indentation has a special meaning) |
(* ... *) | commenting (nestable) |
{ ... } | commenting (nestable) |
< > <= >= | comparison |
= <> | equality / inequality (deep) |
( ... ) | grouping expressions |
case-insensitive | tokens (case-sensitivity (keywords, variable identifiers...)) |
CamelCase | tokens (if case sensitive, what is the standard way for scrunching together multiple words) |
:= | variable assignment or declaration (assignment) |
v: t | variable assignment or declaration (declaration) |
Missing:
documentation comment
information about the current line and file
tokens (variable identifier regexp)
comparison (returns 3 values (i.e. inferior, equal or superior))
comparison (min / max (binary or more))
f(a,b,...) | function call |
f | function call (with no parameter) |
function f(para1 : typ1, para2 : typ2, ...) : retval; var retval : typ0; begin ... end | function definition |
procedure f(para1 : typ1, para2 : typ2); begin ... end | function definition (procedures) |
<function name> := val | function return value (setting the result) |
goto | breaking control flow (goto (unconditional jump)) |
if c then b | if_then |
if c then begin b1 end else begin b2 end | if_then_else |
repeat expr until cond | loop (do something until condition) |
for X := 10 downto 1 do expr | loop (for each value in a numeric range, 1 decrement) |
for i := 1 to 10 do expr | loop (for each value in a numeric range, 1 increment (see also the entries about ranges)) |
while cond do expr | loop (while condition do something) |
case val of v1 : expr1; v2, v3 : expr23 else expr_else end | multiple selection (switch) |
; | sequence |
Missing:
loop (for each value in a numeric range, free increment)
breaking control flow (returning a value)
breaking control flow (continue / break)
t(e) | cast (upcast) |
type n = t | declaration |
const x: T | mutability, constness (type of a constant value) |
val x: T | mutability, constness (type of a mutable value) |
Missing:
annotation (or variable declaration)
uses p | import (everything into current namespace) |
. | package scope |
Missing:
declare
chr | ascii to character |
'z' | character "z" |
ord | character to ascii |
all strings allow multi-line strings | multi-line |
write | simple print (on strings) |
writeln | simple print (on strings) |
+ | string concatenation |
Length | string size |
'...' | strings (verbatim) |
string | type name |
UpperCase / LowerCase | uppercase / lowercase / capitalized string |
Missing:
character type name
strings (with interpolation)
strings (end-of-line (without writing the real CR or LF character))
convert something to a string (see also string interpolation)
serialize (marshaling)
unserialize (un-marshaling)
sprintf-like
string equality & inequality
duplicate n times
upper / lower case character
accessing n-th character
extract a substring
locate a substring
locate a substring (starting at the end)
false | false value |
not | logical not |
or / and | logical or / and (non short circuit (always evaluates both arguments)) |
true | true value |
Boolean | type name |
a[i] | list/array indexing |
a .. b | range (inclusive .. inclusive) |
. | record selector |
addr (77) | reference (pointer) (creation) |
@ (77) | reference (pointer) (creation) |
^ (79) | reference (pointer) (dereference) |
Missing:
tuple constructor
optional value (null value)
optional value (value)
dictionary (type name)
dictionary (constructor)
dictionary (access)
dictionary (has the key ?)
dictionary (remove by key)
dictionary (list of keys)
dictionary (list of values)
ln / | logarithm |
mod | modulo (modulo of -3 / 2 is -1) |
1000 | numbers syntax (integers) |
sqrt / exp / abs | square root / e-exponential / absolute value |
sin / cos / tan | trigonometry (basic) |
Missing:
type name
numbers syntax (integers in base 2, octal and hexadecimal)
numbers syntax (integer thousand-seperator)
numbers syntax (decimals)
addition / subtraction / multiplication / division
negation
random (random number)
random (seed the pseudo random generator)
operator priorities and associativities
trigonometry (inverse)
truncate / round / floor / ceil
bitwise operators