I thought even after reading all the negative stuff on/. I'd give him the benefit of the doubt, but then I came to this in "The Ghost Not":
Scientists:... They shun inductive reasoning
What???
That says it all. Merriam-Webster gives induction as "inference of a generalized conclusion from particular instances", among other meanings. Obviously, science could not exist without induction. He's instantly lost all credibility with me - just another crackpot.
The verification principle itself is neither a tautology nor empirically verifiable; so by it's own criterion it is meaningless.
LOL!:-D Not only that, but the author of that post presumably gets along in life by understanding all kinds of things, like imperatives and questions, that according to that principle are "meaningless".
Naturally, the optimistic Star Trek fans will suggest that we will all lead idyllic communal lives in harmony with nature and wealth will be completely abolished, but such does not seem consistent with human nature.
As an optimistic Star Trek fan - yeah, you've got it about right.:-) Ask yourself - with scarcity reduced from a factor coercing the poor to work as it does now, to just a problem affecting more "luxury" goods and services - why shouldn't a lot of people opt out of the money system altogether? If money doesn't work for you, you'll be able to drop it and live in a happy commune with all us "commun-ists"!;-)
Note that what's commonly called "human nature" is not only to some extent historically and culturally specific, but what's both exciting and terrifying is that nanotechnology offers us the first real possibility of radically changing our invariant "human natures", both physically and mentally. E.g. I'd like to see a nanotech future where everyone is motivated by altruism and compassion. It would sure be efficient and there'd be no need for money. I'll stop there before I start to sound too megalomanical.;)
Containment is not as easy as you think. If this was a cleverly designed weapon, it could send millions of spores rapidly over large distances. If you caught it in time you might just be able to nuke it away - but what if it was in Washington DC? I suspect the government would rather sit there and see the US destroyed rather than do the right thing and nuke their own population. Still, I could be wrong.
Obviously, we need to ideally create a situation where it never gets this far, but I'm not sure how to do that.
More to the point, just think about when ageing has been conquered. Major population problems! Fortunately, space colonisation will probably already have begun by then.
Even nanofood is limited by the total amount of energy extractable from the earth, sea, wind, sun etc, multiplied by the maximum efficiency (<100%). I have no idea what that limit will be for Earth (probably very very huge), but there will be one. If and when we near that point, we'll have to confront the fact that for people to sustainably have children, other people will have to either voluntarily commit suicide, or go into space. The right to choose to die is going to have to become a fundamental human right, I believe.
Of course, there's the possibility of harnessing Zero Point Energy as well. But even then, an Earth covered in 100-story abodes isn't a very appealing prospect.
Re:you're right: lack of technology isn't the prob
on
Rise of the Nanobots
·
· Score: 1
Duh, if overpopulation was a problem, Holland would have major famine problems.
Presumably there will be "patches" to "hotfixes" to "service packs" to "upgrades" to "operating systems" in future... Assuming Win2000 doesn't just collapse in an unmaintainable heap, that is.:)
Unfortunately you miss the point. It looks like they are not being inaccurate, but they actually made up the whole story. That's not caused by the speed of journalism (they have weeks from writing to going on sale anyway), it's caused by unethically making up a story to whip up a moral panic and sell more CensorWare(TM) etc.
With JavaVM startup overhead, it's 2.7 seconds real.
Ah, as I suspected. A very big difference. As I said in another post, real-world Java processes usually last more than 9 seconds, so start up time is insignificant. Also, to repeat myself, if you wrap the whole code in a for loop with 200 iterations the JIT should kick in more, especially if it's Hotspot, and it should get much closer to C's speed for 200 iterations.
Then, as the other poster says, still use Java but get the best of both worlds - use Java for most of it for maximum portability, but use JNI for system programming tweaks. The idea that Java can't interface with other languages is simply not true.
I also believe that the hardware is so changing so quickly that language decisions made on the basis of performance are generally meaningless within a couple of years.
Bravo! Absolutely. In some cases, though, maybe four or five years. My (recently deceased) AMD K6-2 PR300 (real clock 233Mhz I think) wasn't that much faster than an AMD K6 75Mhz at running Java. 4x clock speed won't necessarily translate into 4x execution speed because of other bottlenecks.
Any intro Java book will tell you that your destructors may or may not be called
Duh, there's no such thing as a destructor in Java. You mean finalizers. Very, very few classes even need to use finalizers, so it's not a big problem.
Java has one GUI
That hasn't been true for a long time. Get a clue. How about Swing where you have a choice of 2 or 3 and can roll your own UI fairly easily? How about Open Source alternatives to Swing like Kawa or ICE?
... an OS, an RDBMS, your only other choice is assembler - Java isn't even anywhere near being an option.
Few people should need to write OSs or RDBMSs, there are plenty out there already. Java has never claimed to be able to do everything, so this is a straw man argument. Java is not appropriate for everything, but it is technically superior to C/C++ in many ways - e.g. IMPOSSIBLE to corrupt memory (i.e. using same location for two different variables) using Pure Java code, by the very design of the language, but an easy mistake to make in C.
For people who alreayd know how to deal with c/c++, it would be silly for them to downgrade to a language with demonstrably poorer performance.
Take a look at the real world for one second. Why do so many C programmers also use PERL, even though it's slower?
In the real world, you're not going to have Java processes that just run for 9.0 seconds and then stop (unless you run Java through CGI, which is idiotic if you care about speed). You'd have say an application server with a continuously-running Java process. The whole point about JITs (yes, they did this before HotSpot came along, contrary to Sun's advertising) is that (well, some of them, anyway) only compile bytecode to native code when it's getting used a lot. And then there's bootstrap class loading and initialisation which probably dwarfs the time taken by the main method itself (I don't know if that's included in your results!)
What all that means is, if you wrap a for loop with say 200 iterations around each program, the Java code should be relatively faster per iteration, because after a while the optimisations will trip in - and the initial overheads will be constant, thus less significant.
IBM does have a strong push for Java in some areas. But, as with every large organization, often one arm doesn't know what the other arm is doing. IBM is HUGE, and very bureacratic.
Java's collection framework is no small piece of work
I would dispute that. It's smaller than STL and a good college student could probably knock it out with a modern Algorithms and Data Structures textbook. What's more, nearly all the synchronization is centralised in the Collections class, so you don't even have to worry about locking most of the time.
Java2D, on the other hand, absolutely. I can't say much because of the "confidential information" clause, but, woah, it's one complicated hulk of code! Probably they haven't got around to optimising it very much yet - I've got a program that takes around 30 seconds to display a few-hundred lines of source code - the word-wrapping is done by a Java class that calls some Java2D stuff to get font info, and that's what seems to slow it down.
Ever wondered what happened to those "new operating system" projects by huge companies that never saw the light of day, a few years ago? Well at least one of them got partially reincarnated in Java2D.
It's quite near to being open, in fact. The source code is not Open Source (TM), but you can at least download it for free and find bugs when they are in the platform itself rather than in your own code. The documentation for the profiler and debugger interface is part of the standard documentation - you could write an entire fully featured Java IDE without having to pay Sun a penny. Lots of companies are producing JVMs - if you don't like Sun's VM, you can go with someone else's. There is choice of platform, choice of VM vendor (if you're on a popular platform), a "community specification" process, free access to the Sun bug+feature database, completely open API with no undocumented calls (well, actually there were a few in 1.x but these will probably cease to work in future if they haven't already). Lots and lots of choice. Open standards.
Anyway, I don't think having an Open Source (TM) implementation of Java 2 (there is already one of Java 1.1, Kaffe) would help very much anyway. Any bugs/features fixed/added to say the Classpath project couldn't be guarunteed in the other VMs. Mucking with the implementation takes away the advantages of Write Once, Run Anywhere. This is one area where Open Source (TM) isn't much more helpful (gasp!! Heresy!!) than Community Source.
Of course, Open Source toolkits and Beans written in Pure Java are very worthwhile being done as open source, but I'm talking about the language itself and the core packages.
i.e. the system knows to execute a.class file by invoking "java". Hmmm, that must have been real tough to code. Not.
The point about OSS is that it allows much more freedom to innovate, even if a lot of time is currently spent replicating what someone else has done (which is not surprising and to be welcomed, not condemned!). This is the big picture which debates like this tend to miss.
The general taxpayer pays for these subsidies, in essence funding poor decisions. That's why seatbelt lawas were passed.
Not everything is done for economic reasons. What about the thousands killed on the road each year? Doesn't that have something to do with why the seatbelt laws were passed?
I suppose you believe that where there is not enough economic incentive to do so (e.g. in poor countries), there should be no laws to prevent employers ignoring safety and risking electrocutions, maimings, and deaths. Now that IS monstrous. But it is effectively what happens in some countries (where there are health+safety laws they often aren't enforced.) And the US public buys the products of these sweatshops, let's not forget.
Scientists: ... They shun inductive reasoning
What???
That says it all. Merriam-Webster gives induction as "inference of a generalized conclusion from particular instances", among other meanings. Obviously, science could not exist without induction. He's instantly lost all credibility with me - just another crackpot.
LOL! :-D Not only that, but the author of that post presumably gets along in life by understanding all kinds of things, like imperatives and questions, that according to that principle are "meaningless".
As an optimistic Star Trek fan - yeah, you've got it about right. :-) Ask yourself - with scarcity reduced from a factor coercing the poor to work as it does now, to just a problem affecting more "luxury" goods and services - why shouldn't a lot of people opt out of the money system altogether? If money doesn't work for you, you'll be able to drop it and live in a happy commune with all us "commun-ists"! ;-)
Note that what's commonly called "human nature" is not only to some extent historically and culturally specific, but what's both exciting and terrifying is that nanotechnology offers us the first real possibility of radically changing our invariant "human natures", both physically and mentally. E.g. I'd like to see a nanotech future where everyone is motivated by altruism and compassion. It would sure be efficient and there'd be no need for money. I'll stop there before I start to sound too megalomanical. ;)
Obviously, we need to ideally create a situation where it never gets this far, but I'm not sure how to do that.
Even nanofood is limited by the total amount of energy extractable from the earth, sea, wind, sun etc, multiplied by the maximum efficiency (<100%). I have no idea what that limit will be for Earth (probably very very huge), but there will be one. If and when we near that point, we'll have to confront the fact that for people to sustainably have children, other people will have to either voluntarily commit suicide, or go into space. The right to choose to die is going to have to become a fundamental human right, I believe.
Of course, there's the possibility of harnessing Zero Point Energy as well. But even then, an Earth covered in 100-story abodes isn't a very appealing prospect.
No, it's taking it apart, period. Psychotherapists rarely guarantee to fix you - they want to spin you out for as many years as possible.
Ah, as I suspected. A very big difference. As I said in another post, real-world Java processes usually last more than 9 seconds, so start up time is insignificant. Also, to repeat myself, if you wrap the whole code in a for loop with 200 iterations the JIT should kick in more, especially if it's Hotspot, and it should get much closer to C's speed for 200 iterations.
Bravo! Absolutely. In some cases, though, maybe four or five years. My (recently deceased) AMD K6-2 PR300 (real clock 233Mhz I think) wasn't that much faster than an AMD K6 75Mhz at running Java. 4x clock speed won't necessarily translate into 4x execution speed because of other bottlenecks.
Duh, there's no such thing as a destructor in Java. You mean finalizers. Very, very few classes even need to use finalizers, so it's not a big problem.
Java has one GUI
That hasn't been true for a long time. Get a clue. How about Swing where you have a choice of 2 or 3 and can roll your own UI fairly easily? How about Open Source alternatives to Swing like Kawa or ICE?
Few people should need to write OSs or RDBMSs, there are plenty out there already. Java has never claimed to be able to do everything, so this is a straw man argument. Java is not appropriate for everything, but it is technically superior to C/C++ in many ways - e.g. IMPOSSIBLE to corrupt memory (i.e. using same location for two different variables) using Pure Java code, by the very design of the language, but an easy mistake to make in C.
For people who alreayd know how to deal with c/c++, it would be silly for them to downgrade to a language with demonstrably poorer performance.
Take a look at the real world for one second. Why do so many C programmers also use PERL, even though it's slower?
What all that means is, if you wrap a for loop with say 200 iterations around each program, the Java code should be relatively faster per iteration, because after a while the optimisations will trip in - and the initial overheads will be constant, thus less significant.
I would dispute that. It's smaller than STL and a good college student could probably knock it out with a modern Algorithms and Data Structures textbook. What's more, nearly all the synchronization is centralised in the Collections class, so you don't even have to worry about locking most of the time.
Java2D, on the other hand, absolutely. I can't say much because of the "confidential information" clause, but, woah, it's one complicated hulk of code! Probably they haven't got around to optimising it very much yet - I've got a program that takes around 30 seconds to display a few-hundred lines of source code - the word-wrapping is done by a Java class that calls some Java2D stuff to get font info, and that's what seems to slow it down.
Ever wondered what happened to those "new operating system" projects by huge companies that never saw the light of day, a few years ago? Well at least one of them got partially reincarnated in Java2D.
Anyway, I don't think having an Open Source (TM) implementation of Java 2 (there is already one of Java 1.1, Kaffe) would help very much anyway. Any bugs/features fixed/added to say the Classpath project couldn't be guarunteed in the other VMs. Mucking with the implementation takes away the advantages of Write Once, Run Anywhere. This is one area where Open Source (TM) isn't much more helpful (gasp!! Heresy!!) than Community Source.
Of course, Open Source toolkits and Beans written in Pure Java are very worthwhile being done as open source, but I'm talking about the language itself and the core packages.
i.e. the system knows to execute a .class file by invoking "java". Hmmm, that must have been real tough to code. Not.
The point about OSS is that it allows much more freedom to innovate, even if a lot of time is currently spent replicating what someone else has done (which is not surprising and to be welcomed, not condemned!). This is the big picture which debates like this tend to miss.
If you're interested in evidence which might contradict that view, including official UNICEF reports, try here.
Exactly how does this take place? Is s/he forcing you at gunpoint to read this stuff?
For goodness sake, if you don't like it, don't read it. God!!!!!!
Not everything is done for economic reasons. What about the thousands killed on the road each year? Doesn't that have something to do with why the seatbelt laws were passed?
I suppose you believe that where there is not enough economic incentive to do so (e.g. in poor countries), there should be no laws to prevent employers ignoring safety and risking electrocutions, maimings, and deaths. Now that IS monstrous. But it is effectively what happens in some countries (where there are health+safety laws they often aren't enforced.) And the US public buys the products of these sweatshops, let's not forget.