I have absolutely had it with people saying "Apple is dying" or "Steve Jobs is failing" or "OS X is on its way out." Apple are going to be here for a long time. You'll know that they're dead when you can walk up to ten people on the street, say the name "iPod" and get ten blank looks.
This reminds me of the old AI koan...
on
Computer Voodoo?
·
· Score: 1
A novice was trying to fix a broken Lisp machine by turning the power off and on.
Knight, seeing what the student was doing spoke sternly:
"You cannot fix a machine by just power-cycling it with no understanding of what is going wrong."
Knight turned the machine off and on.
The machine worked.
Sorry if I left some ambiguity in the original example. Yes, x and y are BigIntegers.
Personally, I believe that this:
result = x.add(y.multiply(BigInteger.valueOf(7)));
is far less readable then this:
result = x + (y * 7);
You do raise some good points about order of operations w/ regards to operator overloading - that's why I parenthesize to bejeezus and back. I find it to be a pain to memorize the Java order-of-operations list when I can just parenthesize; additionally, even if I do remember those, there's no guarantee later programmers will. Parentheses, while verbose, are little missionaries prosletyzing the Principle of Least Astonishment.
While we're talking about order-of-operations, let's all set aside our differences and take a look at the Perl Periodic Table of the Operators: (apologies for the PDF - but check it out, you might get a kick out of it)
Please accept my deepest sympathies for the pain you must suffer for 2.5 megs of Java code. I'll always have a place for Java in my heart - it was the first language that I took a class on, and I've written some pretty complicated GUI apps - but I wince at what you must be going through. *shudder*
Absolutely. Programming in Cocoa/ObjC is an absolute dream with TextMate (http://macromates.com/) and Interface Builder; adding garbage collection would make it even easier. Let's just hope that they find a very efficient collector, as faster == better.
How long until some enterprising hacker adds all the features to Java that people miss, such as operator overloading? I personally would use Java far more if I could avoid code such as this:
result = x.add(y.multiply(BigInteger.valueOf(7))).pow(3).ab s().setBit(27);
(Example stolen frome Jamie Zawinski's "Java Sucks" rant.)
Add operator overloading (and I mean PROPER operator overloading, not some find-and-replace garbage) to the JDK v6, and you've got a language that (despite being slower than C++ in some cases) towers over C++ in so many ways - garbage collection, easy exception handling, a huge standard library...
I have absolutely had it with people saying "Apple is dying" or "Steve Jobs is failing" or "OS X is on its way out." Apple are going to be here for a long time. You'll know that they're dead when you can walk up to ten people on the street, say the name "iPod" and get ten blank looks.
A novice was trying to fix a broken Lisp machine by turning the power off and on.
Knight, seeing what the student was doing spoke sternly:
"You cannot fix a machine by just power-cycling it with no understanding of what is going wrong."
Knight turned the machine off and on.
The machine worked.
enlightenment...
While we're talking about order-of-operations, let's all set aside our differences and take a look at the Perl Periodic Table of the Operators: (apologies for the PDF - but check it out, you might get a kick out of it)
http://www.ozonehouse.com/mark/blog/code/Periodic
Please accept my deepest sympathies for the pain you must suffer for 2.5 megs of Java code. I'll always have a place for Java in my heart - it was the first language that I took a class on, and I've written some pretty complicated GUI apps - but I wince at what you must be going through. *shudder*
Absolutely. Programming in Cocoa/ObjC is an absolute dream with TextMate (http://macromates.com/) and Interface Builder; adding garbage collection would make it even easier. Let's just hope that they find a very efficient collector, as faster == better.
Add operator overloading (and I mean PROPER operator overloading, not some find-and-replace garbage) to the JDK v6, and you've got a language that (despite being slower than C++ in some cases) towers over C++ in so many ways - garbage collection, easy exception handling, a huge standard library...