原來程式語言的發展是從 1843年開始, 到現在已經有 170年的歷史.
來記錄程式語言的歷史演進過程、用途~
註: Golang 在這圖表還沒有記錄.
程式語言的歷史演進 + 圖表 1843 ~ 2013
最主要想要記錄的是各程式語言起始的時間點, 可以搭配此篇: 鬍子決定程式語言運勢, 參照著看.
- 1957 – Fortran
- 1958 – Lisp
- 1959 – Cobol
- 1964 – BASIC
- 1970 – Pascal
- 1972 – C
- 1980 – Ada
- 1983 – C++
- 1983 – Objective-C
- 1987 – Perl
- 1991 – Python
- 1993 – Ruby
- 1995 – Java
- 1995 – PHP
- 1995 – JavaScript
- 2009 - Go (2007/9/21 開始設計, 2009/11/10 首次公開發佈)
原文可見: Infographic: The History of Programming Languages, 下述摘錄自此文:
- 1957 – Fortran (short for "The IBM Mathematical Formula Translating System")
- Creator: John Backus of IBM
- Primary Uses: Supercomputing applications (i.e. weather and climate modeling, animal and plant breeding, computational science functions)
- Used By: NASA
- 1958 – Lisp (short for "List Processor")
- High-level. For mathematical notation. Several new computer science topics: tree data structures, automatic storage management, dynamic typing, and self-hosting compilers
- Creator: John McCarthy of MIT
Primary Uses: AL development, air defense systems- Used By: Etsy uses Clojure, a dialect of Lisp
- 1959 – Cobol (short for "Common Business-Oriented Language)
- High-level. Primarily for business computing. First programming language to be mandated by the US Department of Defense.
- Creator: Short Range Committee (SRC)
- Primary Uses: Business software (esp. finance and administration systems, but also banks, insurance agencies, governments, military agencies)
- Used By: Credit cards, ATMs
- *Fun Fact Action movie The Terminator used samples of Cobol source code for the text shown in the Terminator’s vision display.
- 1964 – BASIC (acronym for "Beginner’s All-purpose
- Symbolic Instruction Code")
General-purpose, high-level. Designed for simplicity. Popularity exploded in the mid-‘70s with home computers; early computer games were often written in Basic, including Mike Mayfield’s Star Trek.- Creator: John George Kenny and Thomas Eugene Kurtz of Dartmouth (SRC)
- Primary Uses: Home computers, simple games, programs, utilities
- Used By: Microsoft’s Altair BASIC, Apple II
- 1970 – Pascal (after French mathematician/physicist Blaise Pascal)
- High-level. For teaching structured programming and data structuring. Commercial versions widely used throughout the ‘80s.
- Creator: Niklaus Wirth
- Primary Uses: Teaching programming. Also – Object Pascal, a derivative, is commonly used for Windows application development
- Used By: Apple Lisa (1983), Skype
- 1972 – C (based on an earlier language called "B")
- General-purpose, low-level. Created for Unix systems. Currently the world’s most popular programming language.2 Many leading languages are derivatives, including C#, Java, JavaScript, Perl, PHP, and Python.
- Creator: Dennis Ritchie of Bell Labs
- Primary Uses: Cross-platform programming, system programming, Unix programming, computer game development
- Used By: Unix
- 1980 – Ada (After Ada Lovelace, inventor of the first programming language)
- High-level. Derived from Pascal. Contracted by the US Department of Defense in 1977 for developing large software systems.
- Creator: Jean Ichbiah
- Primary Uses: Dept. of Defense, banking, manufacturing, transportation, commercial aviation
- Used By: NSTAR, Reuters, NASA, subways worldwide
- 1983 – C++ (formerly "C with Classes"; ++ is the increment operator in "C")
- Intermediate-level, object-oriented. An extension of C, with enhancements such as classes, virtual functions, and templates.
- Creator: Bjarne Stroustrup
- Primary Uses: Commercial application development, embedded software, server/client applications, video games
- Used By: Adobe, Google Chrome, Mozilla Firefox, Microsoft Internet Explorer
- 1983 – Objective-C (object-oriented extension of "C")
- General-purpose, high-level. Expanded on C, adding message-passing functionality based on Smalltalk language.
- Creator: Brad Cox and Tom Love of Stepstone
- Primary Uses: Apple programming
- Used By: Apple’s OS X and iOS operating systems
- 1987 – Perl (a language named "PEARL" already existed, so "Pearl" wasn’t an option…)
- General-purpose, high-level. Created for report processing on Unix systems. Today it’s known for high power and versatility.
- Creator: Larry Wall of Unisys
- Primary Uses: CGI, database applications, system administration, network programming, graphics programming
- Used By: IMDb, Amazon, Priceline, Ticketmaster
- 1991 – Python (for British comedy troupe Monty Python – tutorials, sample code, and instructions often reference them)
- General-purpose, high-level. Created to support a variety of programming styles and be fun to use.
- Creator: Guido Van Rossum of CWI
- Primary Uses: Web application, software development, information security
- Used By: Google, Yahoo, Spotify
- 1993 – Ruby (the birthstone of one of the creator’s collaborator)
- General-purpose, high-level. A teaching language influence by Perl, Ada, Lisp, Smalltalk, etc. Designed for productive and enjoyable programming.
- Creator: Yukihiro Matsumoto
- Primary Uses: Web application development, Ruby on Rails
- Used By: Twitter, Hulu, Groupon
- 1995 – Java (for the amount of coffee consumed while developing the language)
- General-purpose, high-level. Made for an interactive TV project. Cross-platform functionality. Second most popular language (behind C).2
- Creator: James Gosling of Microsystems
- Primary Uses: Network programming, web application development, software development, Graphical User Interface development
- Used By: Android OS/apps
- 1995 – PHP ("Personal Home Page")
- Open-source, general-purpose. For building dynamic web pages. Most widely used open-source software by enterprises.
- Creator: Rasmus Lerdorf
- Primary Uses: Building/maintaining dynamic web pages, server-side development
- Used By: Facebook, Wikipedia, Digg, WordPress, Joomla
- 1995 – JavaScript (final choice after "Mocha" and "LiveScript"
- High-level. Created to extend web page functionality. Dynamic web pages use for form submission/validation, interactivity, animations, user activity tracking, etc.
- Creator: Brendan Eich of Netscape
- Primary Uses: Dynamic web development, PDF documents, web browsers, desktop widgets
- Used By: Gmail, Adobe Photoshop, Mozilla Firefox
程式語言歷史資訊圖表
此篇 "程式語言的歷史資訊圖表:Java 才是現任霸主" 為上述的中文翻譯 + 摘要說明, 下述摘錄自此文:
愛達·勒芙蕾絲(Ada Lovelace)是大家公認的首位電腦程式設計師,也開創了世上首上程式語言,從 1843 年至今,程式語言的發展至今已近 170 年的歷史了,在美國現今約有 120 萬以上的相關從業人員,程式也發展出不同的語言,不過根據 Veracode 的調查來看,Java 才是目前最多人使用的程式語言。
- 1843 年: 愛達·勒芙蕾絲(Ada Lovelace)是大家公認的首位電腦程式設計師,也開創了世上首上程式語言。
- 1957 ~ 1959 年: FORTRAN、LISP 與 COBOL 是這時期誕生的程式語言。
- 1970 年: PASCAL 於這一年由尼克勞斯·維爾特(Niklaus Wirth)所創造出來。
- 1972 年: 著名的 C 語言是在這年誕生的,由貝爾實驗室的丹尼斯·里奇(Dennis Ritchie)以早期的 B 語言為基礎所開創出來的,是為了在早期的電腦上執行 UNIX 系統所開創出來的,並做為通用開發的低階程式語言。早期 WWW 網際網路伺服器也是以 C 語言在 1973 年重新撰寫的 UNIX 上運作的。
- 1983 年: C++ 早期被稱之為「C with Classes(包含型別的 C 語言)」,同樣由貝爾實驗室的比雅尼·史特勞斯特魯普(Bjarne Stroustrup)發明,其後才另命名為 C++,其「+」表示為增強之意,C++ 屬中階程式語言,加強了 C 語言中的 Classes(型別)、虛擬函式、模版等功能。
- 1983 年: Objective-C 同樣是洐生至 C 語言的程式語言,由 Stepstone 公司的創辦人布萊德·考克斯(Brad Cox)與湯姆·勒(Tom Love)共同發明,屬於通用、高階的程式語言,其並加入了物件導向與 Smalltalk 語言的訊息傳遞風格。
- 1987 年: Perl 為通用型的高階程式語言,其一開始是 Unisys 的拉里·沃爾(Larry Wall)為了在 UNIX 系統上處理報表更為方便而開創的,Perl 的高性能與靈活度佳被廣為稱道,甚至有程式語言的瑞士刀之稱,其應用範圍很廣,在 CGI、資料庫軟體、系統管理、網路程式與圖形程式都適用。
- 1991 年: Python 是Guido van Rossum(Guido van Rossum)於 CWI(Centrum Wiskunde & Informatica;國家數學和計算機科學研究學會)任職時為了打發時間而開發出來的,其名字則來自其喜愛的英國電視喜劇《Monty Python’s Flying Circus(蒙提·派森的飛行馬戲團)》,也是一個通用型的高階程式語言。
- 1993 年: 以創造人松本行弘(Yukihiro Matsumoto)的誕生石為名的 Ruby 是這幾年頗為當紅的程式語言,也是統計中成長最快的。
- 1995 年: 與咖啡同名的 Java,其名字也真的來自咖啡,只因昇陽工程師詹姆斯·高斯林(James Gosling)覺得在開發此一程式語言時需要耗掉大量的咖啡。其實 Java 本來要命名為 Oak,只不過名稱已被先行註冊,只好更名為 Java。
- 1995 年: PHP 的原文其實是 Personal Home Page 個人首頁,是開創者拉斯姆斯·勒多夫(Rasmus Lerdorf)為了要維護個人網頁所開發的程式集,由於可以組成動態的網頁,在釋出後經各方改寫另外更名成了現今的 Hypertext Preprocessor 超文字預處理器。
- 1995 年: JavaScript 是屬於高階語言,是由網景 Netscape 的布蘭登·艾克(Brendan Eich)為了添增網頁功能而設計而發明的,可用在動態網頁中提交、確認表格資料,創造互動、動畫,或是追踪使用者行為。除了動態網頁的開發外,PDF 文件、瀏覽器與桌面小工具都可利用 JavaScript 來開發。