The "Missing:"s below indicate that an entry is incomplete.
[ x. y. ... ] | 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 (non nestable) |
< > <= >= | comparison |
min / max | comparison (min / max (binary or more)) |
compare | comparison (returns 3 values (i.e. inferior, equal or superior)) |
= ~= | equality / inequality (deep) |
== ~~ | equality / inequality (shallow) |
Smalltalk garbageCollect | force garbage collection |
( ... ) | grouping expressions |
Compiler evaluate: | runtime evaluation |
case-sensitive | tokens (case-sensitivity (keywords, variable identifiers...)) |
CamelCase | tokens (if case sensitive, what is the standard way for scrunching together multiple words) |
[a-zA-Z][a-zA-Z0-9]* | tokens (variable identifier regexp) |
:= | variable assignment or declaration (assignment) |
| v1 v2 | | variable assignment or declaration (declaration) |
Missing:
documentation comment
information about the current line and file
[:a :b| ... ] | anonymous function |
a f | function call |
a f: b g: ... (19) | function call |
f value (22) | function call (with no parameter) |
doesNotUnderstand | function called when a function is not defined (in dynamic languages) |
f ... or f: para1 ... | function definition |
^ | function return value (breaks the control flow) |
yourself | identity function |
Missing:
runtime inspecting the caller information
^ | breaking control flow (returning a value) |
a on: exception_name do: [:exn | b] | exception (catching) |
ifCurtailed | exception (catching) |
ensure | exception (cleanup: code executed before leaving) |
resume | exception (resume execution where the exception took place) |
retry | exception (retrying: after catching an exception, tell the snippet to be re-run) |
signal | exception (throwing) |
c ifTrue: b | if_then |
c ifTrue: b1 ifFalse: b2 | if_then_else |
cond whileTrue: expr | loop (while condition do something) |
. | sequence |
Missing:
loop (for each value in a numeric range, 1 increment (see also the entries about ranges))
loop (for each value in a numeric range, 1 decrement)
loop (for each value in a numeric range, free increment)
super | accessing parent method |
subclass | class declaration |
self | current instance |
class | get the type/class corresponding to an object/instance/value |
respondsTo | has the method |
parent subclass: child | inheritance |
object method: para1 method_continuation: para2 | method invocation |
object method | method invocation (with no parameter) |
o class selectors / o class allSelectors | methods available |
clone / copy or deepCopy | object cloning |
class_name new | object creation |
isKindOf | testing class membership |
at | accessing n-th character |
Character value: c | ascii to character |
$z | character "z" |
asciiValue | character to ascii |
Character | character type name |
asString printString | convert something to a string (see also string interpolation) |
s copyFrom: n to: m | extract a substring |
show | simple print (on strings) |
, | string concatenation |
= ~= | string equality & inequality |
size | string size |
'...' | strings (verbatim) |
String | type name |
asLowercase / asUppercase | upper / lower case character |
asLowercase / asUppercase | uppercase / lowercase / capitalized string |
Missing:
strings (with interpolation)
strings (end-of-line (without writing the real CR or LF character))
multi-line
serialize (marshaling)
unserialize (un-marshaling)
locate a substring
locate a substring (starting at the end)
false | false value |
not | logical not |
| / & | logical or / and (non short circuit (always evaluates both arguments)) |
or / and | logical or / and (short circuit) |
true | true value |
Boolean | type name |
addFirst | adding an element at the beginning (list cons) (side-effect) |
add | adding an element at the end (side-effect) |
allButFirst | all but the first element |
inject into | f(... f(f(init, e1), e2) ..., en) |
detect | find an element |
first | first element |
do | for each element do something |
removeFirst | get the first element and remove it |
removeLast | get the last element and remove it |
includes | is an element in the list |
anySatisfy | is the predicate true for an element |
allSatisfy | is the predicate true for every element |
select | keep elements matching |
last | last element |
, | list concatenation |
#(a b c) (68) | list constructor |
asArray | list out of a bag |
size | list size |
at (71) | list/array indexing |
reversed | reverse |
min / max | smallest / biggest element |
sortBy | sort |
collect | transform a list (or bag) in another one |
l1 with: l2 collect: ... | transform two lists in parallel |
Missing:
type name
adding an element at index
join a list of strings in a string using a glue string
{a} | computable tuple (these are a kind of immutable lists playing a special role in parameter passing) (1-uple) |
{} or #() | computable tuple (these are a kind of immutable lists playing a special role in parameter passing) (empty tuple) |
at | dictionary (access: read) |
h at: k put: o | dictionary (access: write) |
includesKey | dictionary (has the key ?) |
keys | dictionary (list of keys) |
values | dictionary (list of values) |
removeKey | dictionary (remove by key) |
null | optional value (null value) |
v | optional value (value) |
to | range (inclusive .. inclusive) |
normal function call | record selector |
{ a. b. c } | tuple constructor |
+ / - / * / / | addition / subtraction / multiplication / division |
raisedTo | exponentiation (power) |
ln / log: 10 | logarithm |
rem | modulo (modulo of -3 / 2 is -1) |
\\ | modulo (modulo of -3 / 2 is 1) |
- | negation |
1000.0, 1E3 | numbers syntax (decimals) |
1000 | numbers syntax (integers) |
same priorities | operator priorities and associativities (addition vs multiplication) |
sqrt / exp / abs | square root / e-exponential / absolute value |
sin / cos / tan | trigonometry (basic) |
arcSin / arcCos / arcTan | trigonometry (inverse) |
/ rounded / floor / ceiling | truncate / round / floor / ceil |
Missing:
type name
numbers syntax (integers in base 2, octal and hexadecimal)
numbers syntax (integer thousand-seperator)
random (random number)
random (seed the pseudo random generator)
bitwise operators
resume / suspend / terminate | starting / stopping threads |
... fork | thread definition |