On Thursday, 13 December 2012 at 01:32:23 UTC, bearophile wrote:
Walter Bright:
Java makes no attempt to detect integer overflows.
There are various kinds of code. In some kinds of programs you
want to be more sure that the result is correct, while other
kinds of programs this need is less strong.
I personally know people who write high speed trading
software. These people are concerned with nanosecond delays.
They write code in C++. They even hack on the compiler trying
to get it to generate faster code.
It doesn't surprise me a bit that some people who operate
server farms use slow languages like Ruby, Python, and Perl on
them. This does cost them money for extra hardware. There are
always going to be businesses that have inefficient
operations, poorly allocated resources, and who leave a lot of
money on the table.
One "important" firm uses OcaML for high speed trading because
it's both very fast (C++-class fast, faster than Java on
certain kinds of code, if well used) and apparently quite safer
to use than C/C++. And it's harder to find OcaML programmers
than C++ ones.
Bye,
bearophile
According to the Benchmark game, performance of Ocaml is good,
but not fantstic. And certainly not "C++-class" fast. It's more
like "Java-class" fast. (in fact it's slower than Java 7 on most
tests, but uses much more memory).
Unfortunately, D hasn't been on the game for a long time, but
last time it was, it was effectively faster than g++.
So really, we are not talking the same kind of performance here.
D is likely to be MUCH faster than Ocaml.