I'm always interested to see what someone new to Smalltalk has to say about it, always, but this takes the cake so far. I like what Dave had to say, but I'll change it to "Languages of the Gods", for Smalltalk is but one of a few. I personally give it up to both Smalltalk and Lisp, I think most other languages are derivatives of one of these two.

Languages like Smalltalk and Lisp (always got to give Lisp its props) are amplifiers. They make you more of whatever it is that you already are. If you're a bad programmer, they're going to make you worse, they'll let you shoot your foot off in more interesting ways than you can imagine.

If you're a great programmer, they're going to make you that much greater, they're going to let you become a God, and live entirely in a universe of your own abstractions. Anything you don't like you can objectify or macro'fy and never have to think about it again.

These languages will never be mainstream, because the mainstream would never see the benefits they provide. The mainstream would kill themselves with such power. There's a reason the mainstream likes manifest typing, procedural programming, and cut and paste methodologies, quite simply, it's all they can handle.

Reflection is too deep in the bag of tricks for most mainstream programmers, let alone meta programming, or dynamically typed custom DSL's in esoteric languages like Smalltalk and Lisp.

You have to appreciate beauty and elegance to appreciate Smalltalk and Lisp, and quite frankly, those just aren't mainstream values. I think Dave's right, the "Languages of the Gods" will never be mainstream, but you know, that's not really such a bad thing. As long as the communities are large enough to support the work I do, I really don't care about what the bandwagon is up to.