68 karma · joined July 13, 2011
Only a fraction of this time is left to make a decision. ;)
In each case, the language has pointers, however they were not used in the core part of the benchmark. i.e. they didn't get their speed advantage from pointers.
Haskell was the fastest for the thread-ring benchmark, it doesn't have pointers.
If Java had pointers as it does in the sun.misc.Unsafe utility class some code would be faster, but I don't believe this explains why Java is not the fastest in each benchmark. ;)
Object orientated programming is used in a significant portion of all programs, it would be interesting how C/C++ performs in such benchmarks. ;)
There are plenty of pages on the web explaining why suggesting Java support pass-by-reference is incorrect.
The compiler does next to no optimisations and the "client" JIT doesn't remove loops which don't do anything. Only the "server" JIT eliminates such loops, after it has compiled the method which can be triggered by loop which loops many times.
However for £1K which is about $1.5k you can buy a PC with 24 GB, a 3.8 GHz i7, 120 GB SSD, two screens. ;)
I would agree with the suggestion that if you are going to use a dispatcher pattern with NIO, use a library like netty which does this for you. (In any case you don't write it youself)
The computer runs at 3.8 GHz and came with two 20" screens. ;)
The £21K computer is a Dell incl. tax retail price from their web site.
Perhaps it sounds cheaper in £ instead of $ or € ;)