TITLE: Changed Your Language Today? AUTHOR: Eugene Wallingford DATE: June 03, 2005 2:34 PM DESC: Smalltalk is very different from most programming languages. But the most valuable difference is not one most non-Smalltalkers think to think of: the language is written in itself. ----- BODY: I have had this link and quote in my "to blog" folder for a long time:
... the one thing that a Ruby (or Python) programmer should know about Smalltalk is, it's all written in Smalltalk.
But I wanted to have a good reason to write about it. Why does it matter to a Smalltalker that his language and environment are implemented in Smalltalk itself? Today, I ran across a dynamite example that brings the point home. David Buck
... was working for a company once that did a lot of work with large numbers. It's hard, though, to write 45 billion as 45000000000. It's very hard to read. Let's change the compiler to accept the syntax 45b as 45 billion.
Sisyphus pushing a stone up a mountain And he did it -- by adding six lines of code to his standard working environment and saving the changes. This is the sort of openness that makes working in Java or most any other ordinary language feel like pushing rocks up a mountain. Lisp and Scheme read macros give you a similar sort of power, and you can use regular macros to create many kinds of new syntax. But for me, Smalltalk stands above the crowd in its pliability. If you want to make the language you want to use, start with Smalltalk as your raw material. -----