The "Unknown:"s below indicate that an entry is incomplete.
{ ... } | block (grouping statements, especially when statements are not expressions) |
( ... )(1) | block (grouping statements, especially when statements are not expressions) |
\ | breaking lines (useful when end-of-line and/or indentation has a special meaning) |
# | commenting (until end of line) |
-lt -gt -le -ge | comparison |
= != | equality / inequality (shallow) |
eval | runtime evaluation |
case-sensitive | tokens (case-sensitivity (keywords, variable identifiers...)) |
[_a-zA-Z0-9]+ | tokens (variable identifier regexp) |
UPPER_CASE | tokens (what is the standard way for scrunching together multiple words) |
= | variable assignment or declaration (assignment) |
Unknown:
documentation comment
information about the current line and file
grouping expressions
comparison (returns 3 values (i.e. inferior, equal or superior))
comparison (min / max (binary or more))
force garbage collection
f a b ... | function call |
f | function call (with no parameter) |
f() { ... } | function definition |
f() { ... $@ } | function definition (variable number of arguments) |
return(2) | function return value (breaks the control flow) |
Unknown:
function called when a function is not defined (in dynamic languages)
runtime inspecting the caller information
return(2) | breaking control flow (returning a value) |
if c; then ... fi | if_then |
if c; then b1; elif c2; then b2; else b3; fi | if_then_else |
for ((x = 0; x < 10; x++)); do ...; done | loop (for "a la C" (while + initialisation)) |
for i in `seq 10 -1 1`; do ...; done | loop (for each value in a numeric range, 1 decrement) |
while c; do ...; done | loop (while condition do something) |
case val in v1) statement1 ;; v2|v3) statement23 ;; *) statement_else ;; esac | multiple selection (switch) |
; | sequence |
end-of-line | sequence |
Unknown:
loop (forever loop)
loop (do something until condition)
loop (for each value in a numeric range, 1 increment (see also the entries about ranges))
loop (for each value in a numeric range, free increment)
breaking control flow (goto (unconditional jump))
breaking control flow (continue / break)
exception (throwing)
exception (catching)
. p | import (everything into current namespace) |
source p | import (everything into current namespace) |
Unknown:
package scope
declare
"z" | character "z" |
all strings allow multi-line strings | multi-line |
echo(3) | simple print (on strings) |
$a$b | string concatenation |
= != | string equality & inequality |
${#v} | string size |
"... $v ..." | strings (with interpolation of variables) |
<<MARK ... $v ... MARK | strings (with interpolation of variables) |
'...' | strings (with no interpolation of variables) |
<<'MARK' ... MARK | strings (with no interpolation of variables) |
Unknown:
strings (end-of-line (without writing the real CR or LF character))
serialize (marshalling)
unserialize (un-marshalling)
sprintf-like
duplicate n times
upper / lower case character
uppercase / lowercase / capitalized string
ascii to character
character to ascii
accessing n-th character
extract a substring
locate a substring
locate a substring (starting at the end)
false | false value |
exit status different from 0 | false value |
true | true value |
exit status 0 | true value |
Unknown:
logical not
logical or / and
for v in l; do ...; done | for each element do something |
a[i] | list/array indexing |
seq a b / jot - a b(4) | range (inclusive .. inclusive) |
Unknown:
tuple constructor
computable tuple (these are a kind of immutable lists playing a special role in parameter passing) (empty tuple)
computable tuple (these are a kind of immutable lists playing a special role in parameter passing) (1-uple)
computable tuple (these are a kind of immutable lists playing a special role in parameter passing) (using a tuple for a function call)
reference (pointer) (creation)
reference (pointer) (dereference)
optional value (null value)
optional value (value)
optional value (null coalescing)
record (selector)
dictionary (constructor)
dictionary (access)
dictionary (has the key ?)
dictionary (remove by key)
dictionary (list of keys)
dictionary (list of values)
dictionary (merge)
+ / - / * / / | addition / subtraction / multiplication / division |
- | negation |
1000 | numbers syntax (integers) |
mathematical | operator priorities and associativities (addition vs multiplication) |
Unknown:
numbers syntax (integers in base 2, octal and hexadecimal)
exponentiation (power)
random (random number)
random (seed the pseudo random generator)
square root / e-exponential / absolute value
trigonometry (basic)
trigonometry (inverse)
logarithm (base e)
logarithm (base 10)
modulo
truncate / round / floor / ceil
bitwise operators