If Smalltalk Is So Good Why Does Nobody Use It
1–10 of 74 posts
Re: If Smalltalk Is So Good Why Does Nobody Use It
#2* Numerical computation was too slow. Numbers used to be objects and all numerical computations followed object messaging. Ouch! This was eventually remediated but not before we'd dropped Smalltalk.
* Garbage collection was S-L-O-W. Your workstation would randomly freeze 30-60 seconds. It was that bad.
* The built-in windowing environment was an albatross in the early days of Windows and OS/2. Customers wanted a native look-and-feel not the weird (to them) Smalltalk window manager.
* Not everyone had yet bought into object-oriented programming, much less making everything an object. This was really bizarre at the time - even code was an object. Makes sense now, but few people were thinking that way then.
* It was strange. C++ seemed safer since everybody at the time knew and was comfortable with C programming. Little did we know the pitfalls awaiting us when using C++! :)
In the end I think the Smalltalk experience left such a bad taste in everyone's mouth that when these issues were resolved no one was interested in going back and giving Smalltalk a second look. Nowadays Smalltalk lives on in Objective-C. In fact one the shops I was in abandoned Smalltalk for Objective-C, which is one of the few instances I know of people using Objective-C outside of the Apple ecosystem.
Re: If Smalltalk Is So Good Why Does Nobody Use It
#3Back in the 90s we were developing sales force automation software in VB3 (ugh!) which was by no means wonderful. Our stuff ran far faster on modest hardware than similar Smalltalk software running on (by the standards of the time) ludicrously powerful hardware. Delphi, when it came out, was far, far better still.
Smalltalk also seems to have accumulated annoying cruft faster than it got useful. Another large Smalltalk project I was involved in (as a UI designer) suffered from multiple incompatible class hierarchies. I wanted to make different controls that did similar things look similar, but it was impossible because some controls inherited from a 1-bit graphical library and couldn't be rendered in color, others from a 4-bit graphical library and couldn't be rendered in 256 colors, and others didn't respond to certain events in certain ways (e.g. action on mousedown instead of mouseup). It was an absolute nightmare.
The language may be fine, but the implementations of it were slow and bloated, and the class libraries were a disaster area. (Of course, the main company pushing Smalltalk at the time was IBM, which probably says something.)
Re: If Smalltalk Is So Good Why Does Nobody Use It
#4Meanwhile, a lot a people hate on C++, which they're only able to do because they learned its nuanced spec, which they only did because it had already reached critical mass in the wild, because it worked everywhere and was, despite the complaints, comprehensible, if hard to get perfect in the language-lawyer way.
Re: If Smalltalk Is So Good Why Does Nobody Use It
#5A lot of times people like the idea of a thing more than the thing. Meanwhile, a lot a people hate on C++, which they're only able to do because they learned its nuanced spec, which they only did because it had already reached critical mass in the wild, because it worked everywhere and was, despite the complaints, comprehensible, if hard to get perfect in the language-lawyer way.
Re: If Smalltalk Is So Good Why Does Nobody Use It
#6A lot of times people like the idea of a thing more than the thing. Meanwhile, a lot a people hate on C++, which they're only able to do because they learned its nuanced spec, which they only did because it had already reached critical mass in the wild, because it worked everywhere and was, despite the complaints, comprehensible, if hard to get perfect in the language-lawyer way.
This argument reduces to saying that anything popular and widely used is actually better than anything unpopular but beloved by language enthusiasts. This simply isn't the case. Many, many factors beyond merit contribute to language popularity and usage.
Re: If Smalltalk Is So Good Why Does Nobody Use It
#7A lot of times people like the idea of a thing more than the thing. Meanwhile, a lot a people hate on C++, which they're only able to do because they learned its nuanced spec, which they only did because it had already reached critical mass in the wild, because it worked everywhere and was, despite the complaints, comprehensible, if hard to get perfect in the language-lawyer way.
(I don't have any particularly strong opinions on Windows myself; it just seemed an apropos example for the Hacker News crowd. There are a million other examples of the same type, of course.)
Re: If Smalltalk Is So Good Why Does Nobody Use It
#8Earlier quoted context omitted.
This argument reduces to saying that anything popular and widely used is actually better than anything unpopular but beloved by language enthusiasts. This simply isn't the case. Many, many factors beyond merit contribute to language popularity and usage.
You have to have a metric for 'better'. If its 'utility' then yes something popular is better than something unused.
Re: If Smalltalk Is So Good Why Does Nobody Use It
#9Re: If Smalltalk Is So Good Why Does Nobody Use It
#10Earlier quoted context omitted.
This argument reduces to saying that anything popular and widely used is actually better than anything unpopular but beloved by language enthusiasts. This simply isn't the case. Many, many factors beyond merit contribute to language popularity and usage.
You have to have a metric for 'better'. If its 'utility' then yes something popular is better than something unused.