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 |