9 ms·
Java was heavily influenced by Smalltalk but written by and for old C/C++ hackers. Java's success meant Smalltalk's demise.
by ExpiredLink 11y ago
Java was heavily influenced by Smalltalk but written by and for old C/C++ hackers. Java's success meant Smalltalk's demise.
- pjmlp 11y agoWhen people complain about JEE, I usually say they should have experimented CORBA.
- CyberDildonics 11y agoTwo wrongs don't make a right unless you are Microsoft's roadmap.
- pjmlp 11y agoRight, the point being that the enterprise culture that created CORBA, will make anything similar regardless of the programming language.
- CyberDildonics 11y agoToo true. Q. How much will this cost? Q. How much computing power will it take? A. How much you got?
- dschiptsov 11y agoNope. It means a completely different thing. Java: the elegant simplicity of C++ and the blazing speed of Smalltalk. – Jan Steinman Basically, they got it all wrong. Erlang got it right.
- pjmlp 11y agoAt least it got the Smalltalk JIT. :)
- ddp 11y agoActually I think it got Self's JIT, at least that the story that the Self people tell. Squeak and Pharo's Morphic UI also came from Self. http://www.selflanguage.org http://www.selflanguage.org
- pjmlp 11y agoI was simplifying. As Self roots are in Strongtalk, wich had as goal making a faster Smalltalk implementation. Now the closest we have to Self is JavaScript, damaged by DOM and its UI hacks to bend documents into applications.
- olavk 11y agoJava the language is much simpler than C++. I sincerely don't understand how anyone could think otherwise.
- coldtea 11y agoAnd it also has blazing speed -- and why its much faster that it initialy was, it was fast enough from the beginning too. The quote sounds funny, but it's actually BS.
- dschiptsov 11y agoThe sarcasm behind the quote is in that instead of focusing on what is really fundamental - message-passing between share-nothing entities (actors) and message-based polymorphism, they take an "inverse" view and focused on class hierarchies and all these irrelevant particulars from C++ which suits a "packer's" mentality. This is precisely why we have all these famous 120-character long methods, Factories of Factories and design patterns. (Norvig has a whole lecture about how good languages doesn't need design patterns). Of course, there were backed by big money marketing memes which helped to create Java cult - packer's fear of "evil" pointers, their strive for "safety", "guarantees", " standardization" without any understanding of underlying principles. Actually, Java ecosystem is the best compliment to the Programmers Stone essays, while Erlang is the same for design approach focused on what is fundamental - the very ideas emphasised in the Smalltalk design principles described above.
- coldtea 11y ago>The sarcasm behind the quote is in that instead of focusing on what is really fundamental - message-passing between share-nothing entities (actors) and message-based polymorphism, they take an "inverse" view and focused on class hierarchies and all these irrelevant particulars from C++ which suits a "packer's" mentality. What's "really important" for whom? Message passing between share-nothing entities might be good for Erlang but it wasn't really what Java was intented to be used for.
- 11y ago
- huxley 11y agoNot quite, the influence was mostly indirect. Java was most heavily influenced by Objective-C, Patrick McNaughton was really into NeXTSTEP and almost left Sun for NeXT but was given a carte blanche by Scott McNealy to create something new. Championed by James Gosling and Bill Joy, Stealth/Green/Oak/Java pivoted in a bunch of different directions, but very few of the developers were C/C++ guys, in fact, the project was largely a reaction to Sun's dependence on C/C++. Sources: http://cs.gmu.edu/~sean/stuff/java-objc.html http://cs.gmu.edu/~sean/stuff/java-objc.html http://www.blinkenlights.com/classiccmp/javaorigin.html http://www.blinkenlights.com/classiccmp/javaorigin.html
- pjmlp 11y agoI read somewhere that the inspiration for Java interfaces came from Objective-C protocols.
- huxley 11y agoPatrick McNaughton thought so too: "I'm pretty sure that Java's 'interface' is a direct rip-off of Obj-C's 'protocol' which was largely designed by these ex-NeXT'ers" http://cs.gmu.edu/~sean/stuff/java-objc.html http://cs.gmu.edu/~sean/stuff/java-objc.html
- jrochkind1 11y agoOf course, ObjC was very heavily influenced by smalltalk, but wanting to create something compatible with C led to some basic divergence, with C's "closer to the metal" level than smalltalk. Of languages still in use, I think ruby is probably the most influenced by smalltalk. I don't know if I've read Matz actually revealing this (maybe I just haven't googled hard enough, or maybe it's there in Japanese somewhere), but the influence is pretty evident from the outcome.
- pjmlp 11y agoGroovy also has its share of Smalltalk influence. But no language can really claim the Smalltalk spirit without a similar work environment.