Where Programming Comes From

40's: machine level
Raw Binary
50's: assembly language
Names for instructions and addresses. Very specific to each machine.
60's: high-level languages
Fortran, Cobol, Algol, Basic.
70's: system programming languages
C, Pascal (more for teaching structured programming)
80's: object-oriented languages
C++, Ada, Smalltalk, Modula-3, Eiffel, … Varying degrees of strong typing. Better control of structure of really large programs. Better internal checks, organization, and safety.
90's: scripting, components
Perl, Java, Visual Basic, … Glue code.
00's: web server and client
Python, PHP, Ruby, Javascript, … Focus on interfaces, components, frameworks.

Taken from Kernighan's lecture slides from today.