pozorvlak explains why there's power behind the fact that if-then-else is a library feature in Smalltalk, rather than baked-in syntax: that decision means that developers can do the same thing themselves:
Smalltalk's designers had three choices: bake special syntax for if-statements into the language, implement it in Smalltalk library code in terms of more general concepts that were part of the language, or force the programmer to do the work him/herself every time (using, I dunno, computed gotos or something). They made the unusual choice to go for the second option. While this doesn't matter if all you want are if-statements, it affects the language in other ways: the powerful abstraction mechanism needed to do this is available to the user to define new features.
Most things in Smalltalk are an illustration of the "less is more" concept that Arden likes to talk about.
Technorati Tags:
library, development, design patterns