Ray tracer language comparison

We benchmarked five progressively optimised versions of our cut-down ray tracer written in C++, Java, OCaml and SML. Joe Marshall, Nathan Baum, Juho Snellman, Jeffrey Siskind, Lennart Augustsson and others have kindly ported the programs to Common Lisp, Scheme and Haskell.


The discussion of this benchmark is split into five sections:


The following webpages are derived from this work:

This work was inspired by the excellent book "An Introduction to Ray Tracing" by Andrew S. Glassner.


The author of this work (Jon Harrop) has considerably more experience in C++ and OCaml than in Java, SML, Lisp and Scheme. Although every effort has been taken to make this study impartial, it cannot be expected to be completely unbiased.

The notion of verbosity is inherently subjective. Our use of lines of code (LOC) and bytes is clearly imperfect. However, we have tried to adhere to reasonable (but succinct) coding styles in order to make the results meaningful.

Next: Benchmark