Slide 1.a: Programming language genealogy Slide 1.c: Programming language ranking Home |
Complete list
|
Description
|
Why to use it?
|
C#
(C Sharp) |
Concurrent to java, runs on .NET or compatible
platforms (Portable NET, Mono). More - Code |
Easier than C++. May share resources with other languages under a common runtime. |
C
|
C offers great freedom, and lot of debugging
challenge thanks to pointers and memory management. More - Code |
Suffering slow programming to make fast programs. For system programming. |
C++
|
C++ is C plus objects, an extended library,
templates. More - Code |
System programming as C but allow larger project, or applications. |
D language
|
C++ like language, more dynamic. Compatible
with C. D Language - Code |
For teaching or scripting. |
Pascal
|
Old language (1970), improved with objects,
imposes a strictly structured programming. More - Code |
Teaching, or client/server apps with Delphi and Kylix. |
Basic
Asp |
This very old language (1964) was improved
by Microsoft, with a complete programming environment. Other portages
exist. More - Code |
Standard language for scripting Microsoft's applications (Word etc...), and for dynamic web pages (Asp) on Windows servers. |
PHP
|
Designed to be embedded inside HTML to build
dynamic Web pages or update them from databases. More - Code |
Producing HTML pages from data. The version 5 targets Web services. |
Java
|
Was designed to be portable and to replace
C++. More - Code |
Cross-platform applications (but slower than
native ones). For web services programming . |
JavaScript,
ECMAScript |
JavaScript has been invented to build dynamic
client-side html pages, ECMAScript is the standardized version. More - Code |
For interactivity in web pages. Used also by Xul to build graphical user interfaces. |
Scriptol
|
A simple, object-oriented, universal language
with an intuitive and powerful syntax. You can build executables, or embed
code into html pages. XML may be used as data structure. More - Code |
Easy and universal for scripting, prototyping,
making binary applications, dynamic web pages and XML processing. For web services by using PHP 5 as back-end. |
Python
|
A modern interpreted language with powerful
built-in features and a unique indentation feature to shorten coding. The Jython version compiles in Java bytecode. More - Code |
Programming at light speed. Powerful and easy
to learn. Extending Zope for web services. Java scripting with Jython. Only for open source applications (not compiled). |
Boo
|
This is a new version of Python with some new
features. It runs on .Net and Mono and thus, no compatibility problem. Boo - Code |
Similar to Python. |
ASP
|
Scripting language, server-side, for dynamic
web pages by Microsoft, same syntax as Basic. ASP - Code |
Producing HTML pages from data, but under Windows servers only. |
Assembler
|
This is near the machine language and the fastest. You should never use it, as older programmers did. | Making drivers or industrial processing. |
Eiffel, Sather
|
Object-oriented, with "programming per
contract" and other secure features. Sather is an open source implementation.
More - Code |
Programming secured applications. Used by hospitals. |
Perl
|
A scripting interpreted language. Readability
and ease of use are not the goal. Perl - Code |
Mainly used by networks administrators and for small CGI scripts. |
Rebol
|
Interpreted language for network scripting.
The language itself may be augmented. Rebol - Code |
Processing information on distributed computer systems, with small programs. |
Ruby
|
Designed with simplicity in mind. It is interpreted,
and has a proprietary but extensible library. More - Code |
Writing scripts more easily. Using Ruby on
rails. Only for open source applications (not compiled). |
Tcl
|
A scripting language, easy to learn and available
on any platform. More - Code |
Scripting of portable programs with GUI, and web programming by CGI. |
NetRexx
|
By IBM, has a simplified syntax. More - Code |
Extends Java with scripts. |
Lua
|
Add-on or standalone language with extensible
semantic. Lua - Code |
Extending the C language. |
Cobol
|
Business language still used on big computers.
Cobol - Code |
Maintaining old programs on mainframes. |
Fortran
|
One of the first languages, always used for
mathematical tasks. Fortran - Code |
Has huge library for scientific calculations. |
Lisp
|
Lisp is a very old language designed for artificial
intelligence, processes lists only. Lisp - Code |
Artificial intelligence and scripting. |
Scheme
|
Scheme is a modernized version of Lisp. Scheme - Code |
Artificial intelligence and scripting. |
Prolog
|
For logic programming, based on Horn's clauses. Prolog - Code |
Heavy artificial intelligence processing. |
Haskell
|
Functional programming. Slow and memory consuming.
Haskell - Code |
To try programming in another way |
SQL
|
Language of data management. MySQL site |
For databases queries. |
Forth
|
Another oldie. Invented by an astronomer, is
stack based Forth - Code |
For instrumental commands and legacy libraries re-using. |
Smalltalk
|
One of the first object oriented language,
programs can't run outside the IDE. Smalltalk - Code |
Absolutely object-oriented processing. |
Modula,
Oberon |
Successors to Pascal. Oberon - Code |
For nostalgics of the Algol and Pascal time. |
Caml, Ocalm
|
Functional languages, Ocalm is object-oriented. Caml - Code |
Used by universities. May help to build a compiler. |
Scala
|
Procedural, functional and object-oriented
programming language. Scala - Code |
Educational purpose. |
XML
|
Not really a programming language, but may
be used for similar tasks. XML |
XML serves to describe precisely data and may
include actions on data. XSL allows to transform documents. |
Languages implemented on the Java Virtual Machine
(JVM):
|
These programming languages have a .Net implementation:
|