[FYI] Java vs Squeak/Smalltalk, with <CSOTD> included!
goran.hultgren at bluefish.se
goran.hultgren at bluefish.se
Wed Jan 16 11:06:50 UTC 2002
"Eric Arseneau" <eric at ericsworld.com> wrote:
> I love Smalltalk and still wish to build applications using it, but I think
> we need to find ways to work with the huge amount of effort the Java
> community is putting into what they are doing. I happen to be stuck earning
I agree on everything Eric wrote - we use Eclipse here at Bluefish and
those guys praise it as
even better than the Smalltalk-lookalike "VisualAge for Java" which they
used before on a largescale project.
And most of us at Bluefish are Java freaks even though we have a few
Smalltalkers-just-don't-know-when-to-quit guys like me too. :-)
But still... this is my little shot at why I prefer Squeak (in
particular) in no special order:
1. Simpler, more powerful and much more beautiful language. And the
syntax is beautiful too (even though it can be hard to find a good
identation convention that looks nice... If anyone has come up with the
definitive solution to that I am all ears :-)
2. Squeak is more than a language. It is a place (as someone so
eloquently put it). It doesn't suffice to say that the "IDE is written
in Squeak too". That is a big oversimplification. And the power from
having such a super immersive, reflective and changeable environment can
not be overestimated.
3. It has a very free license (without putting any particular meaning
behind the word free) promoting all sorts of activities.
4. It has a VERY interesting and friendly community.
5. Super crossplatform.
6. Due to reasons stated above Squeak has a single IDE which makes it
much easier to cooperate with other developers etc.
7. Good tools for building plugins, interfacing with the outer world
etc. And they are steadily being improved.
8. ...fill in more here... :-)
The only things that occasionally still makes me drool over other tools
1. No reasonable way of building native UIs for different platforms IF I
WOULD LIKE too. But this will probably be solved in time.
2. Lacking a few libraries like for example CORBA. But plugins pop up
like mushrooms these days so that will probably also be solved in time.
If we had a CORBA solution - hey, we could just build a plugin for Orbit
or something, then we could use all that juicy Java code out there
without too much effort.
3. Somewhat crude when it comes to interfacing the OS - lacked
functionality in the filesystem comes to mind. But on the other hand I
would NEVER trade in the crossplatform feature.
"This one is a newbie trap I fell into myself the other day.
Before you do-it, what do you think it will say in the Transcript?"
| a |
a _ #(1).
a at: 1 put: 2.
Transcript show: 'An array with... what? ', #(1) printString;cr.
"Learn these two things:
1. A literal is not a constant. It is just sugar for creating an object.
2. Two equal literals (I guess) in the same method will be compiled to
refer to the same object!
PS. This almost drove me insane the other day... DS"
More information about the Squeak-dev