Benchmarking programming languages?

How can we benchmark a programming language?
We can't - we benchmark programming language implementations.

How can we benchmark language implementations?
We can't - we measure particular programs.


Programming language performance comparisons

01 Jul 2009

 Ubuntu™ : Intel® Q6600® quad-core 

01 Jul 2009

 x64 Ubuntu™ : Intel® Q6600® quad-core 

01 Jul 2009

 x64 Ubuntu™ : Intel® Q6600® one core 

01 Jul 2009

 Ubuntu™ : Intel® Q6600® one core 


Programming language measurements A to Z

*Java 6 steady state approximate jvm steady state

Ada 2005 GNAT large-scale safety-critical software

ATS dependent types & linear types plus theorem proving

BASIC FreeBASIC quickbasic compatible imperative programming Gentoo

CINT seamless c c++ interpreter compiler Gentoo

Cyclone safe dialect of c Debian

GNU gcc unchecked low-level programming

Intel unchecked low-level programming Gentoo

Tiny unchecked low-level programming Debian

C# Mono oo plus functional style (mono is not ms .net)

C++ GNU g++ c plus objects plus generics

C++ Intel c plus objects plus generics Gentoo

CAL lazy functional programming for jvm Gentoo

Clean lazy & strict pure functional programming

Digital Mars c++ reduced and simplified Gentoo

GNU c++ reduced and simplified Debian

Dylan Gwydion multi-method oo programming Debian

Eiffel SmartEiffel everything is an object plus design by contract Gentoo

Erlang HiPE concurrent real-time distributed fault-tolerant software

F# Mono higher-order type-safe programming (mono is not ms .net)

Forth bigForth extensible postfix stack programming Gentoo

Forth GNU GForth extensible postfix stack programming Gentoo

Fortran G95 pioneering numeric and scientific programming Gentoo

Fortran Intel pioneering numeric and scientific programming

Groovy “agile” “dynamic” “java compatible” for jvm

Haskell GHC lazy pure functional programming

Icon high-level string processing Gentoo

Io everything is a prototype object minimalism Gentoo

Java 1.4 -server ubiquitous jit server virtual machine Gentoo

Java 6 -client ubiquitous jit client virtual machine Gentoo

Java 6 -server ubiquitous jit server virtual machine

Java 6 -Xint ubiquitous bytecode interpreter virtual machine

Java 6 -Xms64m initial java server heap size 64m Gentoo

Java GNU gcj optimizing ahead-of-time compiler Gentoo

JavaScript JavaScriptCore WebKit-based ECMA scripting implementation Debian

JavaScript Rhino web-browser to jvm scripting Gentoo

JavaScript SpiderMonkey ubiquitous web-browser embedded scripting Gentoo

JavaScript TraceMonkey ubiquitous web-browser embedded scripting

JavaScript V8

Lisaac everything is a prototype object plus design by contract

Lisp SBCL pioneering s-expression oriented programming

Lua associative arrays for extensible embedded scripting

Lua LuaJIT jit compiler fully compatible with lua 5.1

Matlab GNU Octave linear and nonlinear problems and numerical experiments Debian

Mercury first order logic & types & modes Gentoo

Mozart/Oz multi-multi-multi-paradigm distributed programming

Nice multi-method type-safe oo for jvm Gentoo

Oberon-2 OO2C modular programming plus objects Gentoo

Objective-C GNU c plus a thin layer of smalltalk Debian

OCaml modular type-safe strict functional programming plus objects

OCaml (bytecode) modular type-safe strict functional programming plus objects Debian

Parrot PIR intermediate code for parrot byte code or parrot asm Debian

Pascal Free Pascal imperative programming plus objects

Perl server-side shell & cgi scripts

PHP scripts embedded in html, and much more

Pike explicitly-typed dynamic oo programming Gentoo

Prolog SWI goal-oriented pattern-matching rules and facts Gentoo

Prolog YAP goal-oriented pattern-matching rules and facts Gentoo

Python uncluttered imperative programming plus objects

Python 3 the new Python

Python IronPython scripting for .net (mono is not ms .net) Gentoo

Python Psyco representation-based just-in-time specialization Gentoo

Python pypy Python in Python

Rebol metadata scripting for distributed computing Gentoo

Rexx Regina historic - originally ibm - scripting Debian

Ruby programmer fun - everything is an object scripting

Ruby 1.9 the new Ruby

Ruby JRuby everything is an object scripting for jvm

S-Lang embeddable extension language Debian

Scala higher-order type-safe programming for jvm

Scheme Bigloo statically-scoped properly tail-recursive dialect of lisp Debian

Scheme Chicken translate scheme source to portable c code Gentoo

Scheme Ikarus R6RS compatible incremental compiler Gentoo

Scheme PLT statically-scoped properly tail-recursive dialect of lisp

Smalltalk GNU uniform reflective environment - for scripting Gentoo

Smalltalk Squeak uniform reflective environment - real live objects Gentoo

Smalltalk VisualWorks uniform reflective environment - real live objects

SML MLton whole-program optimizing compiler Gentoo

SML SML/NJ modular type-safe strict functional programming Gentoo

Tcl everything is a string - programmable programming Gentoo

Zonnon Mono active objects (mono is not ms .net) Gentoo

Revised BSD license