What can it do? - Case statements |z| z := { [a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] }. #b caseOf: z -> 4 compiler knows how to compile #caseOf: inline #b caseOf: { [#a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] } -> 4
|z| z := { [a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] }. #b caseOf: z -> 4
|z| z := { [a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] }. #b caseOf: z
-> 4
compiler knows how to compile #caseOf: inline
#b caseOf: { [#a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] } -> 4
#b caseOf: { [#a] := [1+1]. ['b' asSymbol] := [2+2]. [#c] := [3+3] }