views:

103

answers:

4

For instance, I know that basically all languages that are object oriented based are basically derivatives of C# or C++ correct? Does anyone know the order they came in? Like C -> C++ -> C# -> PHP, etc.

+5  A: 

This might cover it: http://en.wikipedia.org/wiki/Timeline_of_programming_languages

Ron Savage
Never actually knew how many programming languages were out there.
Anthony Forloney
Peruse http://www.99-bottles-of-beer.net for more!
kibibu
A: 

Ron Savage answer it's exactly what you're looking for. Just in case you want a little of history here you have another wikipedia link

http://en.wikipedia.org/wiki/History_of_programming_languages

Claudio Redi
+1  A: 

Here's a history in graphical format: http://www.levenez.com/lang/

Dean Harding
dang thats a crazy chart. that must have sucked to put that together.
chadley
@chadley: That's why tools like Graphviz exist.
Ignacio Vazquez-Abrams
+7  A: 

I know my ancient history, not my recent history.

Procedural languages are rooted in FORTRAN, the first language to compile arbitrarily complicated high-level formulas to machine code. FORmula TRANslator (John Backus, Turing award).

Procedural languages may have reached their apogee with Algol-60 (committee).

Important derivatives of Algol-60 include Simula-67 and Pascal, and via Pascal, the Ada, Modula, and Oberon families. Perhaps CLU was influenced also.

All object-oriented languages have roots in Simula-67, which was an Algol derivative (Nygaard and Dahl, Turing award winners).

Smalltalk-80 and C with classes (became C++) were both directly influenced by Simula-67. I don't know if Objective-C was influenced directly from Simula or indirectly from Smalltalk. Likewise Delphi. Self and Ruby both have strong Smalltalk heritage. Java has strong Simula/C++ heritage; C# has strong Java heritage.

Functional languages are rooted in LISP, for LISt Processor (John McCarthy, Turing award winner). Functional languages were also strongly influenced by John Backus's Turing lecture, in which he asked if programming could escape the von Neumann model of programming with mutation, one word at a time. A great flowering occurred, including APL, ISWIM, Hope, ML, and Miranda. Then later, Clean, Haskell, Objective Caml. Still later, Clojure, Scala, and F#.

Then we have the niche players:

  • String-processing languages like SNOBOL and Icon

  • Languages based on substitution, like TRAC, sh, TeX, Tcl, and PHP

  • Dynamic postfix languages like FORTH and PostScript

  • Logic languages like Prolog and Mercury

I won't go on.

Norman Ramsey
+1, That's a good introduction to the history.
Rob Lachlan