IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Another Java article perpetuates FUD about Smalltalk
Java World has an article on [link|http://www.javaworld.com/javaworld/jw-07-2003/jw-0725-designpatterns.html?| Flyweight Objects] in which the author says "modeling everything as an object can be expensive performance-wise. A case-in-point is Smalltalk, which literally models everything as an object, as opposed to Java, which provides a mix of objects and intrinsic types. Today, Java is much more prevalent than Smalltalk, due in no small part to Java's better performance.

Note: Java also provides static type checking, which Smalltalk lacks. Although static type checking is widely regarded as beneficial, most Smalltalk developers argue against it. "

This pure FUD. Smalltalk outperformed Java when it first came out, and in fact even today after 8 years of a lot of money and effort into Java VM's, Smalltalk can hold it's own against Java in performance terms. Java won for 2 reasons: marketing, it looked like C/C++. Of course what he leaves out is teh fact that everything is an object leads to a very clean language and much greater programmer productivity as opposed to the kludges of Java.

The authors comments about static typing are misguided as well as was pointed out in this [link|http://z.iwethey.org/forums/render/content/show?contentid=101330|thread].

Why are Java advocates so ignorant of everything else that is going on? It is amazing how Java advocates believe that Java is a ground breaking language when in reality it is a poor rehash of well known principles taken from other much better languages. I got this from a usenet newsgroup discussion

The Java-Language-Design Research Algorithm, Unleashed:

if (objective-C shows a way to do things better than C++)
do that;
else if (we really really hate this thing as C++ does it)
/* do nothing */;
else
c++.copy_from_slavishly_without_much_more_thought;

New Simple answer
Why are Java advocates so ignorant of everything else that is going on?
Most of any group is ignorant of everything else that's going on outside their comfort zone. Next question?
===

Implicitly condoning stupidity since 2001.
New Re: Another Java article perpetuates FUD about Smalltalk
[...] and in fact even today after 8 years of a lot of money and effort into Java VM's, Smalltalk can hold it's own against Java in performance terms.

Is this personal experience, or do you have references to documented benchmarks? I'd love to see some realistic comparisons.

Thanks.
--
-- Jim Weirich jweirich@one.net [link|http://onestepback.org|http://onestepback.org]
---------------------------------------------------------------------
"Beware of bugs in the above code; I have only proved it correct,
not tried it." -- Donald Knuth (in a memo to Peter van Emde Boas)
New My impression
based on newsgroups, experience, etc. I couldn't find any real benchmarks. There is no doubt whatsoever that in 1996-1997 Smalltalk outperformed Java.
Expand Edited by bluke July 28, 2003, 11:12:31 AM EDT
New Er...
There is no doubt whatsoever that in 1996-1997 Smalltalk outperformed Java.
And how, exactly, is that relevant in 2003?
-YendorMike

[link|http://www.hope-ride.org/|http://www.hope-ride.org/]
New Because the author claimed ...
that Java became more popular then Smalltalk because it performed better. This happened in 1996-1997, at that time Java performance sucked.
New 99.9% of the speed improvement in Java...
...since that time has been in JIT compiler tricks, borrowing from the vm tricks that Smalltalk innovated. IOW, the language syntax and limitations in the object model were not sufficient to provide the speed - shortcuts and optimization tricks were necessary - the same sort of optimization tricks that allowed Smalltalk to have a consistent Object Model.
New The fact is that for most business systems ...
code performance is not an issue, the bottleneck is either the network, the database, or the gui. If you really need performance then you can write the performance sensitive code in C and call it from Smalltalk. OO code performance is a red herring in most cases and it was certainly not the real reason why people adopted Java over Smalltalk.
New Personal experience for me
Even Squeak feels faster to me than Java (I work on both simultaneously). Swing remains a one legged dog. Nevermind the programmer productivity issues.



Smalltalk is dangerous. It is a drug. My advice to you would be don't try it; it could ruin your life. Once you take the time to learn it (to REALLY learn it) you will see that there is nothing out there (yet) to touch it. Of course, like all drugs, how dangerous it is depends on your character. It may be that once you've got to this stage you'll find it difficult (if not impossible) to "go back" to other languages and, if you are forced to, you might become an embittered character constantly muttering ascerbic comments under your breath. Who knows, you may even have to quit the software industry altogether because nothing else lives up to your new expectations.
--AndyBower
Expand Edited by tuberculosis Aug. 21, 2007, 06:07:36 AM EDT
New Re: Another Java article perpetuates FUD about Smalltalk
Well, to provide a little defense on Java's side (since I'm somewhat of a Java advocate, since that's my expertise):

First, JavaWorld isn't known for it's usefullness (IMO) and good articles (they're typically directed at more junior developers).

The article was way off base in it's understanding of how and why Java became popular. The comparison to Smalltalk was just stupid. There are many reasons that Java became successful, but none of them had to do with a comparison to Smalltalk (that is, no one ever chose Java over Smalltalk....unfortunatley, Smalltalk was rarely ever thought of as an option). However, I think the patterns movement has been a positive for the industry, and Java has helped there (that's not to say that it couldn't have been done by a different language, though).

Many, if not most, of the Java developers I run into have little formal computer science background (theory-based background), and therefore don't know about that many different types of languages, etc. Of course, that goes for those that focus on a particular technology over any other (which is fairly standard, since that's what usually allows the expertise necessary to pay the bills in this industry, as unfortunate as that is).

All of that being said, and admitting that Java is in no way the best language or platform, it still fit a need in such as way as to be successful at it.

At the time (1996-97), most new development was done in C/C++ or VB (from a business applications perspective). Note that I said *new* development (obviously, there's probably still more COBOL code out there than anything else), though I should probably even go so far as to extend that to PC-based computers (and networks). So, any new language that was going to become popular would have to be based off of those (so developers could easily pick it up). I don't believe that Smalltalk fit that requirement very well, though Java did (again, I don't think very many people even bothered to look at the feasability of Smalltalk).

I also think that if the timing hadn't been so relatively perfect (the Internet becoming popular, for example), Java wouldn't have had that great of a chance (the portability of the bytecode over the Internet was, in addition to the C/C++ roots, probably the biggest reason for its popularity). The funny part of this is that Java failed rather miserably as a client-side, portable bytecode-based platform for Internet development. However, some of the language features (garbage collection, standardized API's, etc.) made it interesting on the server side, and has been popular there ever since (note that I didn't say appropriate or the best).

So, in defense of Java...it had the features and attributes that allowed it to become popular at the right time in history. Advocacy aside, if a couple of things had been slightly different in history, I think Smalltalk or another better or worse language would have been in its place, instead. However, and it's never ceases to amaze me...it's the marketing and the "good enough" that runs this industry.

Oh, and finally, I actually like Java and enjoy developing in it, even with all of its holes, bugs, etc. It's much more enjoyable than the C/C++ I was doing before.

Dan
New Lost cause, give up. Can't beat PHB's
Staticly-typed languages always win in cubicle-land. It happened before OOP and it will happen after. I like dynamic languages, but they do not win over PHB's.
________________
oop.ismad.com
     Another Java article perpetuates FUD about Smalltalk - (bluke) - (10)
         Simple answer - (drewk)
         Re: Another Java article perpetuates FUD about Smalltalk - (JimWeirich) - (6)
             My impression - (bluke) - (3)
                 Er... - (Yendor) - (2)
                     Because the author claimed ... - (bluke)
                     99.9% of the speed improvement in Java... - (ChrisR)
             The fact is that for most business systems ... - (bluke)
             Personal experience for me - (tuberculosis)
         Re: Another Java article perpetuates FUD about Smalltalk - (dshellman)
         Lost cause, give up. Can't beat PHB's - (tablizer)

Same thing we do every night, Pinky...
59 ms