4 ms·
Epic Answer - Avoiding If statements
- andymoe 14y agoHis idea in the second edit is similar to what is done with a lot of methods in Cocoa and Cocoa Touch and so on: http://cocoadev.com/wiki/MethodSwizzling http://cocoadev.com/wiki/MethodSwizzling
- amccloud 14y agoWouldn't that be considered a state machine? I've done something with an audio player. Each state was a different class.
- deleted 14y ago[deleted]
- yen223 14y agoIt's easy - use switch/case statements! But seriously, isn't it true that Smalltalk doesn't have if statements?
- fzzzy 14y agoYes. Smalltalk has the ifTrue: and ifFalse: methods on the Boolean object. x > y ifTrue: [ Transcript show: 'Truthy' ] So it is using polymorphism as the main mechanism. The True object implements ifTrue: by evaluating the block argument and implements ifFalse: by doing nothing. The False object does the opposite.