This is a preposterous table I just made up after reading Wikipedia's History of Programming Languages. I was trying to figure out which programming language or environment this article might be refering to. The article talks about some of the Canadian federal government's computer systems "falling apart" because they are "60 years" old. Everyone cried "COBOL" but I figured there might be other culprits.
Year | Language | Founder | Claim to fame |
---|---|---|---|
1954 | Fortran | IBM | first high-level language with functional implementation |
1958 | LISP | MIT | first homoiconic language |
1959 | COBOL | US DoD | still in use |
1964 | BASIC | Darmouth College | saw explosive growth with PCs in 1970s |
1972 | C | AT&T | early systems language, foundation of UNIX |
1972 | Prolog | Alain Colmerauer | first (and only?) "logic programming" language |
1978 | SQL | Oracle? | first commercial language to use the relational model, still in use in most database systems |
1980 | C++ | AT&T Bell Labs | major systems programming language |
1986 | Objective C | Apple Inc. | main Apple language until the introductino of Swift |
1986 | Erlang | Ericsson | originally written in Prolog, highly-available, hot-swapping, distributed language |
1987 | Perl | Larry Wall | every sysadmin can write-only it |
1990 | Haskell | University of Glasgow | first type classes implementation |
1991 | Python | Guido van Rossum | ease of use and readability, built Dropbox |
1995 | Ruby | Yukihiro Matsumoto | built GitHub |
1995 | Javascript | Netscape | you're running it right now, most popular language on stackoverflow |
1995 | Java | Sun | "write once, run everywhere", consistently the most popular language on the TIOBE index |
1995 | PHP | Rasmus Lerdorf | personal project, built Facebook, which eventually replaced it with Hack (2014) |
2001 | C# | Microsoft | multi-paradigm |
2009 | Go | readable, concurrent, high-performance | |
2010 | Rust | Mozilla | memory-safe, concurrent, high-performance |
Some interesting observations:
- all of those languages are still in use
- in particular, COBOL is indeed 60 years old and still in use by governmental agencies, according to a US congress report
- I am also aware that Fortran is still in use in institutions, particularly research, and particularly Environnement Canada
- a significant number of programming languages came from research (Lisp, Prolog, Haskell, Python, Ruby), but that has basically disappeared in the last two decades
- the list is skewed towards languages I learned as I reached adult life
- yet I can't help but think some years were especially fertile (like 1995) and that things seem to be slowing down - after all, all the languages before the new ones still exist as legacy code that needs to be rewritten
- in this list, PHP is the only language that was not designed by an author working under a large corporation or university - it was, after all, designed for Personal Home Pages...
But for me, the most significant thing I find in this list is that every corporate ruler eventually creates its own programming language. IBM made Fortran. The US government made COBOL. AT&T made C. Ericsson made Erlang. Google made Golang. Facebook made Hack. And it's interesting to note that some languages came up shortly before the business crashed (e.g. Ericsson, Netscape, Sun) or a dark period (Apple post-Jobs, Google post don't-be-evil, Microsoft anti-trust era). Maybe this means Mozilla is about to crash?
Notable omissions and regrets
I originally jotted this down as a quick list of 18 languages I found while reviewing the Wikipedia page. Then I couldn't help myself and added Prolog, rounding up to 20 languages.
Then I realized I had forgotten Java, one of the most popular programming languages and the foundation of many corporations. So I was stuck and had to remove some things. Besides, there's only so much stuff that can fit in here. So here's the list of langugages that did not make it.
Year | Language | Founder | Claim to fame | Excluded |
---|---|---|---|---|
1940? | Assembly | Alan Turing | first concept of a stored program | not high level |
1970 | Pascal | Niklaus Wirth | first major decent language with complex datatypes | mostly dead |
1971 | Shell | Ken Thompson / AT&T Bell Labs | interactive programming | not a real programming language |
1983 | Ada | US DoD | design-by-contract, used in safety systems | own ignorance |
1987 | Hypertalk | Dan Winkler / Bill Atkinson | english-like | mostly disappeared |
1996 | OCaml | INRIA | the other significant functional language aside Haskell | too similar to Haskell in spirit |
2002 | Scratch | MIT Media Lab | block-based visual language, used for teaching kids | not very well known |
2014 | Swift | Apple Inc. | safer version of Objective C | too Apple-specific |
2014 | Hack | gradual typing for PHP | too Facebook-specific |
I also excluded things like Ada, Algol, APL, and other relics that are historically significant but largely irrelevant now as they are not in use anymore. I was surprised to see that Pascal was the most popular programming language for a few years (1980-1984) until it was surpassed by C, according to this vizualisation. (That video also gives Ada the top row for 1985-1986, which I found surprising...)
Scala, Groovy, Typescript, and other minorities are excluded because I am not familiar with them at all.
Update: I added Ada to the table above after being told it's still widely used in aerospace, avionics, traffic control and all sorts of safety-critical systems. It's also standardized and still developed, with the latest stable release from 2012. Ada is also one of the languages still supported by GCC, along with C, C++, Objective-C, Objective-C++, Fortran, and Golang, at the time of writing.
See also my short computing history.
from Planet Python
via read more
No comments:
Post a Comment