Smalltalk code feels organic and extensible, but it's not well congealed into something as distinct as a "program". The current computing world is a world of programs, not objects. Maybe we'll get to that world of objects, but there needs to be a path leading there that starts here.
So maybe my new conclusion is that Smalltalk is uncompromising in its vision, but the world is not ready for that vision.
Smalltalk is *too* good? I would agree that Smalltalk still (after thirty plus years) seems ahead of its time. But I've seen large programs in C++ and Java become far more unwieldy mostly because they lack the *tools* that make exploration possible.
There are too many places to begin refuting this critique of Smalltalk, but let's start here as a place holder...
You can't easily map C or other libraries into Smalltalk.
Wrong. It's been a while since I've had to map C to Smalltalk, but even eight years ago it was so easy I was calling SAP R/3 functions from Smalltalk with just a few lines of code, and just an hour or so effort (for the first time I called SAP R/3 from *anything* and SAP R/3 is about the strangest thing I've ever had to call from any language).
It doesn't help either that Smalltalk's OO nature encourages everything to be a framework, instead of building mere libraries, but that's a topic for a different day...
Let's hope Ian gets to this someday. I have no idea where he's going with this.
I think it's wrong to underestimate the problems with Smalltalk's system image...
Maybe listing *one* thing wrong with the image would be a start. One can criticize anything, but an image file is just a convenience that other programmers struggle to emulate more or less in other language systems.
Sorry, I don't see much in Ian's critique to sympathize with. Least of all the "it looks strange" argument. Sorry, get over that one already, or ignore Smalltalk altogether. It's that simple.