To get executable speed, the programs were run against the same data file at least three times, timed by the time command, adding user and system time for a total.
Once again, Eiffel wins. Eiffel has been criticized by many for being a slow language, and many who have not used an efficient implementation are leery of a garbage-collected language. In fact, Eiffel (by its use of copy-by-reference instead of by-value) could realize big wins over C++. Add to this the fact that strong garbage collection makes most memory leaks and memory management issues a thing of the past, and Eiffel seems to be a clear winner here as well.