There are many different kinds of addiction…drugs, alcohol, tobacco, gambling, food, television, videogaming, work, sex, etc. Some are extremely destructive. Others are relatively benign. There is one addiction, however, that I am very happy to have, and that’s Smalltalk programming. It is unlike anything else I’ve used in my 20+ years in the IT industry. The reasons for this addiction can be summed up in the following…
Smalltalk has virtually no syntax! Everything is done by message passing, even control structures such as selection and iteration! That makes message passing a sort of sonic screwdriver. Thus, Smalltalk is just about the easiest programming language of any significance to learn and to master. (Scheme is arguably a candidate. Forth is not.)
Smalltalk is the only language to fully embrace “live coding and debugging.” It is baked into the language and its ethos. Some other languages have made feeble attempts to incorporate this quality, but none do it as well as Smalltalk. Smalltalk’s debugger is probably the single biggest reason for the language’s unrivaled productivity.
Smalltalk is so addictive that it’s constantly on my mind. I crave it. I dream about it. It makes me feel so damn good that I absolutely need it. It has me in its Vice-Grip™ and it won’t let go. I would do anything for it. Absolutely anything.