Comparison of programming languages

This is an old revision of this page, as edited by Craig Stuntz (talk | contribs) at 20:42, 4 May 2006 (Clarify what TIOBE really measures). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The following table compares general and technical information for popular programming languages. See the individual products' articles for further information.

Language General model of execution Influences Principal paradigm Typing discipline Introduced Search engine hits[1] Search engine trend[2]


Ada Compilation Algol, Pascal, C++ (Ada 95), Smalltalk (Ada 95) multi-paradigm: concurrent, distributed, generic-programming, imperative, object-oriented static, strong, safe, nominative 1983 18 0
C Compilation Algol, B imperative, flow-driven static, weak 1973 2 -1
C++ Compilation C, Simula, Algol 68 multi-paradigm: imperative, object-oriented, generic static, weak 1980 3 +1
C# Compilation Java, C++ object-oriented dynamic, strong, both safe and unsafe, nominative 2000 7 0
COBOL Compilation ? ? ? 1959 15 -1
ColdFusion Compilation ? ? ? 1995 16 +9
Common Lisp Compilation Lisp, Smalltalk multi-paradigm: functional, object-oriented dynamic 1984 14 +1
D Compilation C++ multi-paradigm: imperative, object-oriented, generic ? 2000 19 +8
Delphi Compilation Pascal, Object Pascal multi-paradigm: imperative, object-oriented static, strong 1995 10 -1
Java Interpretation/JIT compilation/Dynamic compilation C++, Objective-C object-oriented static, strong 1996 1 +1
JavaScript Interpretation C, LiveScript multi-paradigm: imperative, object-oriented, functional dynamic 1995 9 +2
Mathematica Interpretation Lisp Multiple paradigms dynamic, strong 1986 >50 ?
Objective-C Compilation/JIT compilation C, Smalltalk object-oriented dynamic, strong 1986 49 ?
Perl Interpretation C, shell, awk, sed, Lisp multi-paradigm: imperative, object-oriented dynamic 1987 6 -3
PHP Interpretation Perl, C multi-paradigm: imperative, object-oriented dynamic, strong 1995 4 +1
Python Interpretation ABC, Perl multi-paradigm: imperative, object-oriented, functional dynamic (duck), strong 1991 8 0
Ruby Interpretation Smalltalk, Perl multi-paradigm: imperative, object-oriented, functional, concurrent dynamic (duck), strong 1995 20 +10
Scheme Interpretation Lisp, Algol 60 functional dynamic 1975 14 +1
Smalltalk JIT compilation Sketchpad, Simula object-oriented dynamic 1971 35 ?
Visual Basic Compilation QuickBASIC event-driven static, strong 1991 5 +1
Visual Basic .NET JIT compilation Visual Basic object-oriented, event-driven static, strong 2001 17 +11
  1. ^ From the first column of the May, 2006 TIOBE Programming Community Index. Languages are ranked sequentially from most web hits to least web hits based on search engine results. Google, MSN, and Yahoo are used to calculate the rank. In determining popularity of a language, the language may include or exclude certain dialects or other languages. See what's included or excluded in the Exceptions and inclusions chart below.
  2. ^ From the Delta in Position column of the May, 2006 TIOBE Programming Community Index. This number indicates the language's change in search engine hits over the last year. In determining the hit trend for a language, the language may include or exclude certain dialects or other languages. See what's included or excluded in the Exceptions and inclusions chart below.
Exceptions and inclusions
Exceptions and inclusions used in determining popularity and usage trend
Language Exceptions/Inclusions
Awk Included: awk, gawk, mawk, nawk
C# Included: C#, C-Sharp, C Sharp
ColdFusion Included: ColdFusion, Cold Fusion, CFMX, CFML
D Exception: "3-D Programming"
Delphi/Kylix Included: Delphi, Kylix
IDL Exception: "corba"
Lisp/Scheme Included: Lisp, Scheme
Python Included: Python, Jython, IronPython (Jan Persson)
T-SQL Included: T-SQL, Transact-SQL
Tcl/Tk Included: Tcl/Tk, Tcl, Tk
VB.NET Included: VB.NET, Visual Basic.NET, Visual Basic .NET, Visual Basic 2005, VB 2005
Visual FoxPro Included: FoxPro, Fox Pro, VFP