People keep claiming that, but it is just not true.
Its not people who claim that you are free to implement your own VM - its Sun - James Gosling, for example.
HP's clean-room implementation of a JVM (and just a JVM!) tells you nothing about whether their JVM is entangled in Sun patents or licenses.
Actually, it does. That's why they did it. That is why there are several clean-room implementations of the VM (e.g. Kaffe) and the libraries (e.g. GNU Classpath).
Yes, but while C# looks and works like Java, it is not Java compatible
That is not the point. The point is that companies can implement Java-like languages without legal problems. You can even write a Java VM if you like.
it is of little help for companies or open source projects stuck with millions of LOC based on a proprietary platform.
I don't understand the use of 'stuck with' here. It implies some sort of problem, as if the lines of code will suddenly vanish or stop working.
However, in the long run, we can hope that Java source code translators or on-the-fly bytecode translators can avoid Sun's patents and licenses while still allowing people to migrate their legacy Java code to an open platform.
You may hope this, and - strangely - term Java 'legacy', but I - along with hundreds of thousands of fellow developers - am happy to use a free language that is guaranteed compatible and binary portable across all major OSes. If an 'open' platform turns up that has the same degree of power, range of deployment platforms, and multi-vendor support, I would be happy to use that too.
Many Java specs are proprietary and available only under license, and in addition Sun has lots of patents on parts of Java. That makes the Java platform proprietary.
No. Many parts of Sun's implementation of Java are patented and proprietary. This does not apply to clean room versions of Java (like HPs), or Kaffe, or many other Java implementations.
However, if (like GNU) you don't want to use Sun's code, you don't have to - that is why there is the GNU Classpath project, to develop a Java that fits the GNU definitions of 'free and open', showing that the Java platform definitely need not be proprietary.
As for C#- sure, its kind of a Java dialect, but as its not called Java, you know it is not compatible, and you don't get to run your Java code on it. This is proof of Java NOT fragmenting.
Use Java if you like. But don't keep pretending that it's an "open" platform. Using Java is just like using Windows: you are using a single-vendor, proprietary platform.
Java is not single vendor - that is its huge strength. I can get it from IBM, HP, Sun, SGI and many others.
As for quoting RMS - as much as I admire him, he has his own political axes to grind, and his own definitions. He was not the first to coin the term 'open'.
And yes, I have read the licences. I just honestly disagree with you.
As others have said, the current generation of big iron Suns (the Sun Fire) is NUMA. You can find details in
I know. The point was that Solaris is very good at scaling over SMP as well, with a highly multi-threaded kernel. Whatever the architecture, a kernel which has been tuned for years to handle very large number of processes and threads is a benefit (otherwise, only specialised software can really make use of those processors). I assumed that this kind of tuning and high performance would be of interest, and not casually dismissed with the attitude 'Linux is starting to do this so we don't care about Solaris'.
If Sun tanks, the world will go on just fine without them.
This was not the point. The point was that Sun and Solaris and Sparc etc. weren't interesting.
But, anyway, considering Sun has contributed so much to open systems and pioneered the use of Unix as both a server and workstation system for more than 20 years, I find the typical slashdot hostility to them very strange. I guess its because they aren't quite 'on message' with open source and GPL - the don't yet follow the 'true religion'.
If Sun 'tank', it will be a great loss, as one of the real innovative software and hardware companies will have gone. Sun played a major role in holding off Microsoft in the server market during the 90s.
Do you take me for an idiot? Scalability is exactly that. By definition.
No offence intended! I have seen (and used) many systems where software was placed on large arrays of processors, but made poor use of them. Its like putting a go-kart on a 5-lane motorway.
Having used Cray stuff, I would! Its too specialised. What Solaris/Sparc is great at is general purpose scalability, both on SMP and NUMA. SGI has always been keen on scalability for specialised purposes, such as numerical work (I have used their machines for molecular modelling). SGI etc. is fun stuff, but you would not want to try to scale your web server on it.
Every Unix besides SCO supports that stuff at this point,
Well yes, but Linux doesn't. So, an open source Solaris should be something worth looking at?
But ultimately you have to trust one company with the evolution and future viability of the language.
No you don't. You are free to implement your own VM (as many have - HPs VM is clean room). If Sun 'stopped' Java, many companies would continue with the development of the language, but it could not be called 'Java' - that's all (unless, as would be likely, IBM bought it). After all, that's more or less what Microsoft have done with C# - its nothing more or less than MS 'Java', designed because MS did not like Sun's licensing. Java is backed by tens of large companies.
You are right in this case, but many Sun systems (including earlier SunFire machines) are SMP.
As far as scalability goes, Linux runs on "lesser" 512 CPU systems, with plans for 1024 and 2048. Solaris is at 144 CPUs. They're the cold, hard facts.
Scalability has nothing to do with the number of processors. Just because you can place a Linux system on that number of CPUs does not mean that it will efficiently make use of them for general purpose use. The large CPU count Linux systems are often for very specialised numerical work where a coder puts in a lot of effort (using specialised libraries) to distribute algorithms. You may be able to use kernel services (such as I/O) from all of those processors, but that doesn't mean it will scale within the kernel (although, in these applications, it doesn't need to).
On the other hand, high-processor count Solaris/Sparc systems are usually more general purpose business machines, running database engines, app servers, web services etc. These hammer the CPUs with unpredictable and varied requests.
The 'I put my OS on more processors that you' argument is very misleading.
Because he must know that Sun is basically finished as a company
Nice to know you have such predictive abilities.
: their hardware is uninteresting and Solaris is uninteresting.
I would have thought that their SMP hardware would be interesting to geeks - unlike the compromised NUMA architecture that lesser Unix boxes run.
Solaris should definitely be of interest to anyone interested in UNIX or Linux - unless features such as partitioning and scalability are dull?
The most annoying and dangerous thing about Schwartz is that he keeps trying to redefine the meaning of "open" and "open source" in order to get Sun's highly proprietary platforms and prducts (e.g., Java) to be more widely accepted.
Java 'Highly proprietary'? Ah - I guess that is why the spec is published, and why GNU can implement Java; why Java is the most in-demand language for IT jobs, and why its so widely targetted on sourceforge.
There is nothing proprietary about Java, only the name, which you must pass compatibility tests to use. Without these compatibility tests, Java would have fragmented years ago.
(and, make no mistake: Sun has tighter legal ownership of Java than Microsoft has of any of their platforms)
Evidence?
Sun already extract a lot of revenue from Java - they use it as their language of preference when the provide software consultancy services (now a significant part of their revenue). There is also J2EE licencing, and J2ME services and partnering.
If you wanna impress me with how fast Java is, show me the Quake2 software renderer in Java, and compare *that* to the c++ version
You mentioned doing direct access to a framebuffer. I would say that counts as 'hardware', so fits with my original post.
I can see how in your specialised area, C++ has real advantages. I was definitely not saying Java should be used everywhere. What I feel was disastrous was to use C++ for general application coding.
If you don't like Java, there are other languages which can provide safety and range-checking - Pascal for example - just as fast as C++, and the range checking can be turned off at runtime to improve speed.
As for portability, I think you are missing the point. The firefox browser does indeed run on lots of platforms, but its up to the firefox coders to ensure that, and also up to the coders to supply binaries for each of those platforms. That is a lot of work, especially for small IT companies (I know, been there, done that - had to support C++ code on different platforms with different graphics drivers). With Java (and other JIT systems) you supply one binary, and let the VM writers do the work. Your single shipped binary runs on platforms you haven't even heard about, providing there is a sun-certified JVM for that platform. I know this is not perfect in all cases, but it is still an important time saver. It certainly saves me time.
This may be irrelevant to you, but for 90% of all developers, its revolutionary.
It's kinda funny that the way to make Java run faster is to take Sun out of the equation...
The author should have read the release notes from tomcat. Its not taking Sun out of the equation - its exactly the reverse: To quote:
"Tomcat 5.5 is designed to run on J2SE 5.0 and later"
There is nothing anti-Sun about this at all. What they have done is to include the Eclipse JDT compiler, to speed the compilation of JSP pages, but tomcat can also use the Javac in any JDK you have installed.
The bundling of the JDT compiler allows Tomcat to be used if you only have a Java Runtime installed, and not the full developer's kit.
So, this is nothing about dropping Sun, and nothing about making Java faster. How wrong can an article be?
Having just three to five reviewers, and no feedback after something is published is not perfect.
It can take months if not years to organise feedback from even a few reviewers - the work involved in organising more would be huge, considering that all comments are passed back to the author.
There is plenty of chance to give feedback - letter to the editor, which are often published in the journal, and of course you can submit your own data for publication.
And I'm a grown up, so I can *decide* if I want to use pointers, gotos, or multiple inhieritance. If you don't like these features in C++ THEN DONT USE THEM.
We may be all grown-ups, but its a sad fact of IT development that we all make mistakes, and pointers aren't an optional extra in C++, they are fundamental to the way data is stored. The use of C/C++ has been a disaster in many areas of IT, leading to buffer overruns, buggy software and virus susceptibility. (I remember spending days trying to trace a buffer overrun in a C++ program on DOS).
Unless you are writing OS kernels, device drivers or hardware controllers its hard to see why anyone would feel the need to use raw memory pointers in an application.
Peer review can be done in better way over the Net,since peer reviewers rarely get any money for their effort
The amount of money that reviewers are paid (I was never paid anything) is irrelevant. Someone has to organise the reviewing, and act as referee in conflicts between reviewers and authors. This is conventionally the editor of the journal. These editors have a lot of work to do. There will need to be a whole new structure set up to organise reviewing, and to categorise publications and to ensure quality of presentation.
Simply stating that everything will be 'open and free', could potentially demolish a centuries-old and tested mechanism for maintaining quality in science.
What Java really needs to be taken seriously is a standard!
Who is not taking Java seriously? It's by far the most in-demand language in the IT industry.
And it would help if there was native Java support for the most popular computing platforms.
Why? The point of java is that it is not native. Its up to the VM implementor to handle the native code translation.
Instead Sun choose to sue Microsoft to get them to remove Java from their OS.
No. Sun sued Microsoft to get them to either remove or fix Microsoft's Java, which deliberately omitted parts of standard Java (such as RMI) and by default encouraged developers to produce Windows-only applications.
Decent Java is widespread on Windows as companies like Dell pre-install Sun's JRE.
So give us some LINKS to these benchmarks instead of just endlessly asserting..
Well, I don't think one comment in a post qualifies as 'endlessly'. But as you asked for links:
http://www.idiom.com/~zilla/Computer/javaCbenchm ar k.html
I particularly like the quote: "Programmers, despite their professed appreciation of logical thought, are not immune to a kind of mythology," (such as "Java is slow")
Presumably it also has to compile the standard java libs?
Ah. Looks like I have misunderstood aspects of how Hotspot works. I was wrong. Hotspot does work on class files and byte codes.
I think I understand what you are saying about C++ and memory, but I can't see the relevance to real memory application requirements and performance. Firstly in, Java you can easily free up memory blocks for re-use: just set them to null and let the highly tuned garbage collection system deal with them. Secondly, memory use is highly architecture-dependent. I have had years of tedious experience of attempting to use profilers and sizeof() calls to monitor and control C++ memory management. When I switched to Java I abandoned all that with a sigh of relief. I strongly believe that software engineering should be primarily about algorithms and not resources. There may be some hacker kudos in manually allocating and managing each byte of your application's memory, but in terms of almost all practical coding jobs its surely an outdated practice - I would no more want to handle memory management for my applications that I would want to handle hardware interrupts.
Java bytecode is not easy to optimize, having been originally intended for interpretation
Hotspot does not optimize the java bytecode. It optimises the Java source (with techniques such as inlining and variable re-arrangement) and produces high-performance native code.
_look_ at Java memory footprints, _look_ at your options for reducing them (ie adjust the GC. Great.)
Java memory footprints can be very small - which is why it is favoured for use in many embedded systems. There are many options for reducing footprints, including run-time GC, stack and heap options and re-coding as a results of profiling, just as with any other language.
because everyone relevant has made the same simple observations I have.
Not true - there is a lot of work being put into Java numerics.
So, _whyyyyyyy_ am I _stilllll_ told by posters on/. and people just out of university that "Java on Hotspot is theoretically faster than any compiled code!" I mean just stop it.
Because in the experience of many of us, Java on Hotspot is not just theoretically faster, its actually faster, and we have benchmarked this with real examples. (IBMs VMs are particularly high performance).
Remember when C++ was 'slow'? I do. Almost anything written in it was declared to be memory hungry and sluggish. I remember the big fuss when major companies moved from assembler to C/C++ in the 80s. It was often stated that C++ could never be fast because of object orientation and because it could not be 'fine tuned' like assembler.
Seeing all the same old arguments with Java is just like Deja Vu all over again.
Man, Sun is pissing me off. They have ZERO direction. One day everything is SunONE, then everything is Java desktop.
Why does stuff like this get modded up? Sun have definite directions - software services, embedded java, new Sparc designs, spreading Solaris onto new hardware, including AMD 64 and Power.
SunONE is server side, Java Desktop is client side - there is no conflict.
I just can't wait for them to ditch Sparc and Solaris completely.
Why? If you don't like them, just use Linux. Meanwhile Sun and Fujitzu are investing hugely in the next generation of high-performance Sparc, and Solaris is being ported to new processors.
I have it figured out, I think. Sun's Jonathan Schwartz is jealous of Darl McBride. *He* yearns to be the most hated man in tech.
I'd be interested to know why there is any such opinion of Schwartz. There is huge evidence that McBride seems to be a company destroyer simply out to pump stock value with pointless lawsuits. I can understand the dislike, even hate, there. However, Schwartz has encouraged the use of Linux within Sun, and has been pushing the open sourcing of many technologies within Sun. Some have already been opened, such as Looking Glass. He may be something of a marketing-speak guy, and wear a suit, but this makes him hated?. Isn't that just a little bit silly?
Regarding 4Q profit: "Excluding one-time items, the network-computer and software company lost $169 million, or 5 cents a share" - CBS MarketWatch
Translation: "Excluding the income that put Sun into profit, they made a loss." Well, honestly.
Their cash assets alone are over 7 billion.
My understanding is that Visual Basic is still the most widely used development language. Unless... perhaps you are confusing Java with C#?
My mistake. I meant most widely requested development language in the Job market. I should have deleted the word 'used'. Visual Basic is second, and C# is not that widely used so far, especially in non-US development. At least as far as I can tell from job searches and market reports. It surprised me!
Linux is not an "implementation of UNIX(TM)"
OK - rephrase 'UNIX-like system' or 'system that does almost everything that UNIX does with lots of the same libraries, directories and commands, but with a better licence'.
Sun's toast. Somebody will eventually acquire their dried husk, but as an industry leader it's passed its prime and hasn't done anything revolutionary in years.
This is some new definition of 'toast' that describes a company back in profit, with billions of financial assets and billions of intellectual assets? They have been in difficulty for a while, and have taken a long time to come out of it, but by no standards are they 'toast' or a 'husk'.
and hasn't done anything revolutionary in years.
Java, which is now the most widely requested used development language may not be what you call 'revolutionary', but then what is these days? For example, Linux is a superb system, and deservedly successful, but its hardly revolutionary.... just a damn good implementation of Unix.
People keep claiming that, but it is just not true.
Its not people who claim that you are free to implement your own VM - its Sun - James Gosling, for example.
HP's clean-room implementation of a JVM (and just a JVM!) tells you nothing about whether their JVM is entangled in Sun patents or licenses.
Actually, it does. That's why they did it. That is why there are several clean-room implementations of the VM (e.g. Kaffe) and the libraries (e.g. GNU Classpath).
Yes, but while C# looks and works like Java, it is not Java compatible
That is not the point. The point is that companies can implement Java-like languages without legal problems. You can even write a Java VM if you like.
it is of little help for companies or open source projects stuck with millions of LOC based on a proprietary platform.
I don't understand the use of 'stuck with' here. It implies some sort of problem, as if the lines of code will suddenly vanish or stop working.
However, in the long run, we can hope that Java source code translators or on-the-fly bytecode translators can avoid Sun's patents and licenses while still allowing people to migrate their legacy Java code to an open platform.
You may hope this, and - strangely - term Java 'legacy', but I - along with hundreds of thousands of fellow developers - am happy to use a free language that is guaranteed compatible and binary portable across all major OSes. If an 'open' platform turns up that has the same degree of power, range of deployment platforms, and multi-vendor support, I would be happy to use that too.
Many Java specs are proprietary and available only under license, and in addition Sun has lots of patents on parts of Java. That makes the Java platform proprietary.
No. Many parts of Sun's implementation of Java are patented and proprietary. This does not apply to clean room versions of Java (like HPs), or Kaffe, or many other Java implementations.
However, if (like GNU) you don't want to use Sun's code, you don't have to - that is why there is the GNU Classpath project, to develop a Java that fits the GNU definitions of 'free and open', showing that the Java platform definitely need not be proprietary.
As for C#- sure, its kind of a Java dialect, but as its not called Java, you know it is not compatible, and you don't get to run your Java code on it. This is proof of Java NOT fragmenting.
Use Java if you like. But don't keep pretending that it's an "open" platform. Using Java is just like using Windows: you are using a single-vendor, proprietary platform.
Java is not single vendor - that is its huge strength. I can get it from IBM, HP, Sun, SGI and many others.
As for quoting RMS - as much as I admire him, he has his own political axes to grind, and his own definitions. He was not the first to coin the term 'open'.
And yes, I have read the licences. I just honestly disagree with you.
As others have said, the current generation of big iron Suns (the Sun Fire) is NUMA. You can find details in
I know. The point was that Solaris is very good at scaling over SMP as well, with a highly multi-threaded kernel. Whatever the architecture, a kernel which has been tuned for years to handle very large number of processes and threads is a benefit (otherwise, only specialised software can really make use of those processors). I assumed that this kind of tuning and high performance would be of interest, and not casually dismissed with the attitude 'Linux is starting to do this so we don't care about Solaris'.
If Sun tanks, the world will go on just fine without them.
This was not the point. The point was that Sun and Solaris and Sparc etc. weren't interesting.
But, anyway, considering Sun has contributed so much to open systems and pioneered the use of Unix as both a server and workstation system for more than 20 years, I find the typical slashdot hostility to them very strange. I guess its because they aren't quite 'on message' with open source and GPL - the don't yet follow the 'true religion'.
If Sun 'tank', it will be a great loss, as one of the real innovative software and hardware companies will have gone. Sun played a major role in holding off Microsoft in the server market during the 90s.
Do you take me for an idiot? Scalability is exactly that. By definition.
No offence intended! I have seen (and used) many systems where software was placed on large arrays of processors, but made poor use of them. Its like putting a go-kart on a 5-lane motorway.
I wouldn't call a Cray a lesser unix box.
Having used Cray stuff, I would! Its too specialised. What Solaris/Sparc is great at is general purpose scalability, both on SMP and NUMA. SGI has always been keen on scalability for specialised purposes, such as numerical work (I have used their machines for molecular modelling). SGI etc. is fun stuff, but you would not want to try to scale your web server on it.
Every Unix besides SCO supports that stuff at this point,
Well yes, but Linux doesn't. So, an open source Solaris should be something worth looking at?
But ultimately you have to trust one company with the evolution and future viability of the language.
No you don't. You are free to implement your own VM (as many have - HPs VM is clean room). If Sun 'stopped' Java, many companies would continue with the development of the language, but it could not be called 'Java' - that's all (unless, as would be likely, IBM bought it). After all, that's more or less what Microsoft have done with C# - its nothing more or less than MS 'Java', designed because MS did not like Sun's licensing. Java is backed by tens of large companies.
You are mistaken. Sun's SunFire systems are NUMA.
You are right in this case, but many Sun systems (including earlier SunFire machines) are SMP.
As far as scalability goes, Linux runs on "lesser" 512 CPU systems, with plans for 1024 and 2048. Solaris is at 144 CPUs. They're the cold, hard facts.
Scalability has nothing to do with the number of processors. Just because you can place a Linux system on that number of CPUs does not mean that it will efficiently make use of them for general purpose use. The large CPU count Linux systems are often for very specialised numerical work where a coder puts in a lot of effort (using specialised libraries) to distribute algorithms. You may be able to use kernel services (such as I/O) from all of those processors, but that doesn't mean it will scale within the kernel (although, in these applications, it doesn't need to).
On the other hand, high-processor count Solaris/Sparc systems are usually more general purpose business machines, running database engines, app servers, web services etc. These hammer the CPUs with unpredictable and varied requests.
The 'I put my OS on more processors that you' argument is very misleading.
Because he must know that Sun is basically finished as a company
Nice to know you have such predictive abilities.
: their hardware is uninteresting and Solaris is uninteresting.
I would have thought that their SMP hardware would be interesting to geeks - unlike the compromised NUMA architecture that lesser Unix boxes run.
Solaris should definitely be of interest to anyone interested in UNIX or Linux - unless features such as partitioning and scalability are dull?
The most annoying and dangerous thing about Schwartz is that he keeps trying to redefine the meaning of "open" and "open source" in order to get Sun's highly proprietary platforms and prducts (e.g., Java) to be more widely accepted.
Java 'Highly proprietary'? Ah - I guess that is why the spec is published, and why GNU can implement Java; why Java is the most in-demand language for IT jobs, and why its so widely targetted on sourceforge.
There is nothing proprietary about Java, only the name, which you must pass compatibility tests to use. Without these compatibility tests, Java would have fragmented years ago.
(and, make no mistake: Sun has tighter legal ownership of Java than Microsoft has of any of their platforms)
Evidence?
Sun already extract a lot of revenue from Java - they use it as their language of preference when the provide software consultancy services (now a significant part of their revenue). There is also J2EE licencing, and J2ME services and partnering.
a plugin... OTHER THAN JAVA!
Most new PCs ship with Sun's VM pre-installed (Dell do this), so no need to install anything.
The Expanded Universe has given the explanation that Greedo is a stupid loser who has no fucking idea how to be a bounty hunter.
Which raises an interesting possibility - maybe Greedo accidentally shot himself.
If you wanna impress me with how fast Java is, show me the Quake2 software renderer in Java, and compare *that* to the c++ version
You mentioned doing direct access to a framebuffer. I would say that counts as 'hardware', so fits with my original post.
I can see how in your specialised area, C++ has real advantages. I was definitely not saying Java should be used everywhere. What I feel was disastrous was to use C++ for general application coding.
If you don't like Java, there are other languages which can provide safety and range-checking - Pascal for example - just as fast as C++, and the range checking can be turned off at runtime to improve speed.
As for portability, I think you are missing the point. The firefox browser does indeed run on lots of platforms, but its up to the firefox coders to ensure that, and also up to the coders to supply binaries for each of those platforms. That is a lot of work, especially for small IT companies (I know, been there, done that - had to support C++ code on different platforms with different graphics drivers). With Java (and other JIT systems) you supply one binary, and let the VM writers do the work. Your single shipped binary runs on platforms you haven't even heard about, providing there is a sun-certified JVM for that platform. I know this is not perfect in all cases, but it is still an important time saver. It certainly saves me time.
This may be irrelevant to you, but for 90% of all developers, its revolutionary.
It's kinda funny that the way to make Java run faster is to take Sun out of the equation...
The author should have read the release notes from tomcat. Its not taking Sun out of the equation - its exactly the reverse: To quote:
"Tomcat 5.5 is designed to run on J2SE 5.0 and later"
There is nothing anti-Sun about this at all. What they have done is to include the Eclipse JDT compiler, to speed the compilation of JSP pages, but tomcat can also use the Javac in any JDK you have installed.
The bundling of the JDT compiler allows Tomcat to be used if you only have a Java Runtime installed, and not the full developer's kit.
So, this is nothing about dropping Sun, and nothing about making Java faster. How wrong can an article be?
Now Gredo and Han shoot at the SAME time!
Gredo must have been a very, very, very bad shot.
Having just three to five reviewers, and no
feedback after something is published is
not perfect.
It can take months if not years to organise feedback from even a few reviewers - the work involved in organising more would be huge, considering that all comments are passed back to the author.
There is plenty of chance to give feedback - letter to the editor, which are often published in the journal, and of course you can submit your own data for publication.
And I'm a grown up, so I can *decide* if I want to use pointers, gotos, or multiple inhieritance. If you don't like these features in C++ THEN DONT USE THEM.
We may be all grown-ups, but its a sad fact of IT development that we all make mistakes, and pointers aren't an optional extra in C++, they are fundamental to the way data is stored. The use of C/C++ has been a disaster in many areas of IT, leading to buffer overruns, buggy software and virus susceptibility. (I remember spending days trying to trace a buffer overrun in a C++ program on DOS).
Unless you are writing OS kernels, device drivers or hardware controllers its hard to see why anyone would feel the need to use raw memory pointers in an application.
Peer review can be done in better way over the Net,since peer reviewers rarely get any money
for their effort
The amount of money that reviewers are paid (I was never paid anything) is irrelevant. Someone has to organise the reviewing, and act as referee in conflicts between reviewers and authors. This is conventionally the editor of the journal. These editors have a lot of work to do. There will need to be a whole new structure set up to organise reviewing, and to categorise publications and to ensure quality of presentation.
Simply stating that everything will be 'open and free', could potentially demolish a centuries-old and tested mechanism for maintaining quality in science.
hopefully this will help filter out bogus research by opening it up to more eyes.
How is that going to help? The way to filter out bogus research is peer review by competing experts in the field. This is what happens now.
What Java really needs to be taken seriously is a standard!
Who is not taking Java seriously? It's by far the most in-demand language in the IT industry.
And it would help if there was native Java support for the most popular computing platforms.
Why? The point of java is that it is not native. Its up to the VM implementor to handle the native code translation.
Instead Sun choose to sue Microsoft to get them to remove Java from their OS.
No. Sun sued Microsoft to get them to either remove or fix Microsoft's Java, which deliberately omitted parts of standard Java (such as RMI) and by default encouraged developers to produce Windows-only applications.
Decent Java is widespread on Windows as companies like Dell pre-install Sun's JRE.
from when Sun withdrew from ISO/IEC and ECMA because they didn't want to give up any control over Java?
Because Sun and Java are not monopolies.
So give us some LINKS to these benchmarks instead of just endlessly asserting..
m ar k.html
Well, I don't think one comment in a post qualifies as 'endlessly'. But as you asked for links:
http://www.idiom.com/~zilla/Computer/javaCbench
I particularly like the quote:
"Programmers, despite their professed appreciation of logical thought, are not immune to a kind of mythology," (such as "Java is slow")
Presumably it also has to compile the standard java libs?
Ah. Looks like I have misunderstood aspects of how Hotspot works. I was wrong. Hotspot does work on class files and byte codes.
I think I understand what you are saying about C++ and memory, but I can't see the relevance to real memory application requirements and performance. Firstly in, Java you can easily free up memory blocks for re-use: just set them to null and let the highly tuned garbage collection system deal with them. Secondly, memory use is highly architecture-dependent. I have had years of tedious experience of attempting to use profilers and sizeof() calls to monitor and control C++ memory management. When I switched to Java I abandoned all that with a sigh of relief. I strongly believe that software engineering should be primarily about algorithms and not resources. There may be some hacker kudos in manually allocating and managing each byte of your application's memory, but in terms of almost all practical coding jobs its surely an outdated practice - I would no more want to handle memory management for my applications that I would want to handle hardware interrupts.
Java bytecode is not easy to optimize, having been originally intended for interpretation
/. and people just out of university that "Java on Hotspot is theoretically faster than any compiled code!" I mean just stop it.
Hotspot does not optimize the java bytecode. It optimises the Java source (with techniques such as inlining and variable re-arrangement) and produces high-performance native code.
_look_ at Java memory footprints, _look_ at your options for reducing them (ie adjust the GC. Great.)
Java memory footprints can be very small - which is why it is favoured for use in many embedded systems. There are many options for reducing footprints, including run-time GC, stack and heap options and re-coding as a results of profiling, just as with any other language.
because everyone relevant has made the same simple observations I have.
Not true - there is a lot of work being put into Java numerics.
So, _whyyyyyyy_ am I _stilllll_ told by posters on
Because in the experience of many of us, Java on Hotspot is not just theoretically faster, its actually faster, and we have benchmarked this with real examples. (IBMs VMs are particularly high performance).
Remember when C++ was 'slow'? I do. Almost anything written in it was declared to be memory hungry and sluggish. I remember the big fuss when major companies moved from assembler to C/C++ in the 80s. It was often stated that C++ could never be fast because of object orientation and because it could not be 'fine tuned' like assembler.
Seeing all the same old arguments with Java is just like Deja Vu all over again.
Man, Sun is pissing me off. They have ZERO direction. One day everything is SunONE, then everything is Java desktop.
Why does stuff like this get modded up? Sun have definite directions - software services, embedded java, new Sparc designs, spreading Solaris onto new hardware, including AMD 64 and Power.
SunONE is server side, Java Desktop is client side - there is no conflict.
I just can't wait for them to ditch Sparc and Solaris completely.
Why? If you don't like them, just use Linux. Meanwhile Sun and Fujitzu are investing hugely in the next generation of high-performance Sparc, and Solaris is being ported to new processors.
If they piss you off, don't buy their stuff.
I have it figured out, I think. Sun's Jonathan Schwartz is jealous of Darl McBride. *He* yearns to be the most hated man in tech.
I'd be interested to know why there is any such opinion of Schwartz. There is huge evidence that McBride seems to be a company destroyer simply out to pump stock value with pointless lawsuits. I can understand the dislike, even hate, there. However, Schwartz has encouraged the use of Linux within Sun, and has been pushing the open sourcing of many technologies within Sun. Some have already been opened, such as Looking Glass. He may be something of a marketing-speak guy, and wear a suit, but this makes him hated?. Isn't that just a little bit silly?
Regarding 4Q profit:
"Excluding one-time items, the network-computer and software company lost $169 million, or 5 cents a share" - CBS MarketWatch
Translation: "Excluding the income that put Sun into profit, they made a loss." Well, honestly.
Their cash assets alone are over 7 billion.
My understanding is that Visual Basic is still the most widely used development language. Unless... perhaps you are confusing Java with C#?
My mistake. I meant most widely requested development language in the Job market. I should have deleted the word 'used'. Visual Basic is second, and C# is not that widely used so far, especially in non-US development. At least as far as I can tell from job searches and market reports. It surprised me!
Linux is not an "implementation of UNIX(TM)"
OK - rephrase 'UNIX-like system' or 'system that does almost everything that UNIX does with lots of the same libraries, directories and commands, but with a better licence'.
Sun's toast. Somebody will eventually acquire their dried husk, but as an industry leader it's passed its prime and hasn't done anything revolutionary in years.
This is some new definition of 'toast' that describes a company back in profit, with billions of financial assets and billions of intellectual assets? They have been in difficulty for a while, and have taken a long time to come out of it, but by no standards are they 'toast' or a 'husk'.
and hasn't done anything revolutionary in years.
Java, which is now the most widely requested used development language may not be what you call 'revolutionary', but then what is these days? For example, Linux is a superb system, and deservedly successful, but its hardly revolutionary.... just a damn good implementation of Unix.