There is a somewhat convincing argument that software design patterns are really just an attempt to emulate missing language features. Eric Lippert recently wrote a series of articles exploring how ...