Instructors' Guide
Introduction
Terminology
Expressions
Control
Objects
Inheritance
Technology
Summary
Control
Smalltalk has no control structures
except message passing.
However, familiar control structures
are defined as methods on
booleans and integers.
See slide [sm-control].
Keyword methods
(i <= 7)
ifTrue: [ m:= "oke" ]
ifFalse: [ ... ]
Control structures
- conditional -- ifTrue: ifFalse:
- iteration -- whileTrue:
- looping -- to: by: do: [ :i | ... ]
slide: Smalltalk -- control
For example, an if-statement
may be obtained by defining
the method ifTrue: ifFalse:
on booleans.
(Despite the use of keywords, parameter passing in Smalltalk is
positional.
Each sequence of keywords may be
regarded as a different method.)
In a similar vein,
we may define iteration and looping.
For looping, we may employ
the parameter mechanism of blocks,
as indicated above.