MJ Ray wrote:
Steve Fosdick fozzy@pelvoux.demon.co.uk writes:
- Including much more useful functionality in the standard
library (such as a GUI toolkit) which means that many more things are done in a standard way.
I actually see this as a *disadvantage*. What I like in a language is a small, compact, memorable, consistent, very standard core -- not the acres of libraries which make up the current standard Java. I'm still plodding through texts... as soon as I think I know roughly what's available, someone seems to invent more ;-)
Not knowing OpenGL wouldn't stop you writing C, would it? The advantage of a huge standard library is it keeps things standardised. Instead of a zillion vendors each doing their own thing to look up, you just need to flip thru the API.
C++ -- tying legs onto a dog and calling it an octopus. Now where's that quote from?
You, I believe, although I think you got it from the Smalltalk website.
Is Java really a "clean OO design from smalltalk"? Is there a non-trivial superclass which is an ancestor of everything? int?
Largely. As an analogy, in database design sometimes one has to de-normalise a perfect database for efficiency. It's rather inefficient to store a 32 bit reference to a 32 bit number, and for chars it's much worse. Fx, "Hi World" is 8 chars (ignoring terminator). This is 8 bytes in Java, or 8*4+8 = 40 in MangleLang.
Alexis Lee alexis@turton.com writes:
[...] This gives performance near equal to C, and (wild unfounded guess) probably much better than any loose-typed or philosophy-designed language like PHP or Scheme.
"I think PHP could become the BASIC of the next Years" -- Thies, PHP maintainer.
You actually slight Scheme very badly here, you know. Yes, you'd expect me to say that, but even so! Putting it with PHP?
I read the report today showing a scheme webserver outperforming a PHP one by 2:1... lies, damn lies and benchmarks perhaps, but PHP is really not in the same ball-park. Also, you can get strictly-typed optimised schemes. Or schemes implemented in Java (Kawa, BRL, Silk). Careful what you say when you don't know ;-)
Don't be careful what you say when you say you don't know. I knew PHP had relatively c* performance, and my experience of 'conceptual' languages like Lisp or Prolog is that there's a lot of wasted effort involved. I quoted Scheme instead of Prolog primarily to bait you, and secondarily because I thought more people might have heard of it. If Scheme is nothing like either L or P I will go and hide under a rock.
These Java programmers of Scheme are probably trying to counteract the problems, for there are many: Java still doesn't have closures, continuations, first-class procedures...
Off the list, Mark, are there any instances where a task can only be done using closures, or using a closure enhances efficiency? Custom sort is the favourite example I believe, but this is usually done using a function pointer in C. Hence a closure can be simulated by passing a reference to an anonymous function, which I rather suspect Java can do. You can certainly have anonymous classes, which lends the same result.
And what the heck are continuations and first-class procedures?
Alexis