2021 年最值得学习的 10 种编程语言
2021 年 1 月 19 日
首个编程语言是?这要归功于一位英国数学家。事实上,被称为 Ada Lovelace 的 Augusta Ada Byron 定义了首个编程语言。它是一种“汇编”语言,但是,它的分析机一直没有完成。“Plankalkül”紧随 Ada Lovelace 项目之后出现。1942 年,德国计算机科学家和工程师 Konrad Zuse 首次提出了这种为工程应用而开发的编程语言。它是首个为计算机而设计的高级编程语言。这个项目的首个版本发布于 1946 年。
有趣的是,一般来说,由于第二次世界大战的缘故,数字电子计算机很可能是应用于军方(正是因为这场战争以及计算机在军事战略中的重要性)而不是为公众所知。
但是,历史上最重要的编程语言是什么呢?预计下,在 2021 年使用最多的又是哪些呢?
2021 年你可以学习的 10 种编程语言
下面,我们将以年代为单位逐一介绍下历史上的主要编程语言。但是,2021 年的主要编程语言是什么呢?它们是如何发展的呢?
10、 Go
Go 是一种静态强类型、编译型的编程语言,由 Robert Griesemer、Rob Pike 和 Ken Thompson 设计而成。Go 在语法上类似于 C,但它具有内存安全、垃圾回收、结构类型和 CSP-style 的并发性等特性。该语言因其域名(golang.org)而常被称为 Golang,但它真正的名字是 Go。
来源:https://en.wikipedia.org/wiki/Go_(programming_language)
9、Swift
Swift 是一种功能强大且直观的编程语言,适用于 macOS、iOS、watchOS、tvOS 等平台。编写 Swift 代码具有交互性和趣味性,它语法简洁而又富有表现力,并且 Swift 包含了很多开发人员喜欢的现代特性。Swift 代码在设计上是安全的,但也能生产出运行速度极快的软件。
来源:https://developer.apple.com/swift/
8、 R
R 是由统计计算 R 基金会支持的用于统计计算和图形学的编程语言和自由软件环境。统计人员和数据挖掘人员广泛使用 R 语言来开发统计软件并进行数据分析。
来源:https://en.wikipedia.org/wiki/R_(programming_language)
7、Ruby
Ruby 是一种动态的、开源的编程语言,注重简洁性和效率。它具有优雅的语法,不仅易读而且也易于编写。
来源:https://www.ruby-lang.org/zh_cn/
6、 C#
C#是一种通用的多范式编程语言, 包含静态类型、强类型、 词法作用域、命令式、声明式、函数式、泛型、面向对象以及面向组件等编程规则。
来源:https://en.wikipedia.org/wiki/C_Sharp_(programming_language)
5、 C++
C++是由 Bjarne Stroustrup 创建的一种通用编程语言,它是 C 语言的扩展,也就是“带有类的 C”。
来源:https://en.wikipedia.org/wiki/C%2B%2B
4、JavaScript
JavaScript,通常缩写为 JS,是一种符合 ECMAScript 规范的编程语言。 JavaScript 是高级的、通常也是即时编译的、多范式的。 它具有花括号语法、动态类型、基于原型的面向对象和一级函数等功能。
来源: https://en.wikipedia.org/wiki/JavaScript
3、 PHP
PHP 是一种流行的通用脚本语言,特别适用于 Web 开发。PHP 快速、灵活且实用,对从博客到世界上最流行的网站都能提供强大的支持。
2、 Java
Java 是由 Sun Microsystems 公司的 James Gosling 开发的一套计算机软件和规范,该公司后来被 Oracle 收购,它提供了一个用于开发应用软件并将其部署在跨平台计算环境中的系统。
来源: 维基百科
1、 Python
Python 是一种解释型、面向对象的、具有动态语义的高级编程语言。它的高级内置数据结构与动态类型和动态绑定相结合,使得它对于极速应用程序开发非常有吸引力,也可以用作将现有组件连接起来的脚本或粘合语言。Python 简单易学的语法强调可读性,因此降低了程序的维护成本。Python 支持模块和包,这鼓励了程序的模块化和代码重用。Python 解释器和广泛的标准库以源代码或二进制形式免费提供给所有主要平台,并且可以自由分发。
1950s 前
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1804 | 提花织布机 (Jacquard machine) | Joseph Marie Jacquard | 无(独有的语言) |
1943–45 | Plankalkül (概念) | Konrad Zuse | 无(独有的语言) |
1943–46 | ENIAC coding system | John von Neumann、John Mauchly、 J. Presper Eckert、Herman Goldstine after Alan Turing
ENIAC的第一批程序员是Kay McNulty、 Betty Jennings、 Betty Snyder、Marlyn Meltzer、Fran Bilas、和 Ruth Lichterman | 无(独有的语言) |
1946 | ENIAC Short Code | Richard Clippinger、John von Neumann after Alan Turing | ENIAC coding system |
1946 | 冯·诺伊曼计算机系统 (标志性) | 冯·诺伊曼和戈德斯坦 | ENIAC coding system |
1947 | ARC汇编语言(ARC Assembly) | Kathleen Booth | ENIAC coding system |
1948 | CPC Coding scheme | Howard H. Aiken | 分析机指令码 |
1948 | Curry notation system | Haskell Curry | ENIAC coding system |
1948 | Plankalkül (概念实现) | Konrad Zuse | 无(独有的语言) |
1949 | EDSAC Initial Orders | David Wheeler | ENIAC coding system |
1950s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1950 | Short Code | William F. Schmidt、Albert B. Tonik、J. R. Logan | Brief Code |
1950 | Birkbeck Assembler | Kathleen Booth | ARC |
1951 | Superplan | Heinz Rutishauser | Plankalkül |
1951 | ALGAE | Edward A. Voorhees 和 Karl Balke | 无(独有的语言) |
1951 | Intermediate Programming Language | Arthur Burks | Short Code |
1951 | Regional Assembly Language | Maurice Wilkes | EDSAC |
1951 | Boehm unnamed coding system | Corrado Böhm | CPC Coding scheme |
1951 | Klammerausdrücke | Konrad Zuse | Plankalkül |
1951 | OMNIBAC Symbolic Assembler | Charles Katz | Short Code |
1951 | Stanislaus (标记性) | Fritz Bauer | 无(独有的语言)
|
1951 | Whirlwind assembler | MIT“旋风计划”( Project Whirlwind)的Charles Adams 、Jack Gilmore | EDSAC |
1951 | Rochester assembler | Nat Rochester | EDSAC |
1951 | Sort Merge Generator | Betty Holberton | 无(独有的语言) |
1952 | A-0 | Grace Hopper | Short Code |
1952 | Glennie Autocode | Alick Glennie after Alan Turing | CPC Coding scheme |
1952 | Editing Generator | Milly Koss | SORT/MERGE |
1952 | COMPOOL | RAND/SDC | 无(独有的语言) |
1953 | Speedcoding | John W. Backus | 无(独有的语言) |
1953 | READ/PRINT | Don Harroff、James Fishman、 George Ryckman | 无(独有的语言) |
1954 | Laning and Zierler system | MIT “旋风计划”的Laning、Zierler、Adams | 无(独有的语言) |
1954 | Mark I Autocode | Tony Brooker | Glennie Autocode |
1954–55 | FORTRAN (概念) | IBM公司 John W. Backus 领导的团队 | Speedcoding |
1954 | ARITH-MATIC | UNIVAC的Grace Hopper领导的团队 | A-0 |
1954 | MATH-MATIC | Charles Katz领导的团队 | A-0 |
1954 | MATRIX MATH | H G Kahrimanian | none (unique language) |
1954 | IPL I (概念) | Allen Newell、 Cliff Shaw、 Herbert A. Simon | none (unique language) |
1955 | FLOW-MATIC | UNIVAC的Grace Hopper领导的团队 | A-0 |
1955 | BACAIC | M. Grems 和 R. Porter |
|
1955 | PACT I | SHARE | FORTRAN, A-2 |
1955 | Freiburger Code | University of Freiburg | 无 |
1955–56 | Sequentielle Formelübersetzung | Fritz Bauer and Karl Samelson | Boehm |
1955–56 | IT | Team led by Alan Perlis | Laning and Zierler |
1955 | IBM |
| |
1958 | IPL II (实现) | Allen Newell、 Cliff Shaw、 Herbert A. Simon | IPL I |
1956–58 | LISP (概念) | John McCarthy | IPL |
1957 | COMTRAN | Bob Bemer | FLOW-MATIC |
1957 | GEORGE | Charles Leonard Hamblin | 无(独有的语言) |
1957 | FORTRAN I (实现) | IBM的John W. Backus | FORTRAN |
1957–58 | UNICODE | Remington Rand UNIVAC | MATH-MATIC |
1957 | COMIT (概念) | Victor Yngve | 无(独有的语言) |
1958 | FORTRAN II | IBM由John W. Backus领导的小组 | FORTRAN I |
1958 | ALGOL 58 (IAL) | ACM/GAMM | FORTRAN, IT, Sequentielle Formelübersetzung |
1958 | IPL V | Allen Newell, Cliff Shaw, Herbert A. Simon | IPL II |
1959 | APT | Douglas T. Ross |
|
1959 | FACT | Fletcher R. Jones, Roy Nutt, Robert L. Patrick | 无(独有的语言) |
1959 | COBOL(概念) | CODASYL协会 | FLOW-MATIC, COMTRAN, FACT |
1959 | JOVIAL | SDC的Jules Schwartz | ALGOL 58 |
1959 | LISP(实现) | John McCarthy | IPL |
1959 | MAD – Michigan Algorithm Decoder | Bruce Arden, Bernard Galler, 和Robert M. Graham | ALGOL 58 |
1959 | TRAC (概念) | Calvin Mooers |
|
1960s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1960 | ALGOL 60 |
| ALGOL 58 |
1960 | COBOL 61 (实现) | The CODASYL Committee | FLOW-MATIC, COMTRAN |
1961 | COMIT (实现) | Victor Yngve | 无(独有的语言) |
1961 | GPSS | IBM的Geoffrey Gordon | 无(独有的语言) |
1962 | FORTRAN IV | IBM | FORTRAN II |
1962 | APL (概念) | Kenneth E. Iverson | 无(独有的语言) |
1962 | Simula (概念) |
| ALGOL 60 |
1962 | SNOBOL | Ralph Griswold等. | FORTRAN II, COMIT |
1963 | CPL | Barron, Christopher Strachey等 | ALGOL 60 |
1963 | SNOBOL3 | Griswold等 | SNOBOL |
1963 | ALGOL 68(概念) | Adriaan van Wijngaarden等 | ALGOL 60 |
1963 | JOSS I | Cliff Shaw, RAND | ALGOL 58 |
1964 | MIMIC | H. E. Petersen, et al. | MIDAS |
1964 | COWSEL | Rod Burstall, Robin Popplestone | CPL, LISP |
1964 | PL/I (概念) | IBM | ALGOL 60, COBOL, FORTRAN |
1964 | BASIC | 达特茅斯学院(Dartmouth College)的John George Kemeny和 Thomas Eugene Kurtz | FORTRAN II, JOSS |
1964 | IBM RPG | IBM | FARGO |
1964 | Mark-IV | Informatics |
|
1964 | Speakeasy-2 | ANL(Argonne National Laboratory,美国阿贡国家实验室)的Stanley Cohen | Speakeasy |
1964 | TRAC(实现) | Calvin Mooers |
|
1964 | P′′ | Corrado Böhm | 无(独有的语言) |
1964? | IITRAN |
|
|
1965 | RPG II | IBM | FARGO, RPG |
1965 | MAD/I (概念) | 密歇根大学(University of Michigan) | MAD, ALGOL 60, PL/I |
1965 | TELCOMP | BBN | JOSS |
1965 | Atlas Autocode | 曼彻斯特大学(Manchester University)的Tony Brooker、Derrick Morris | Algol 60, Autocode |
1966 | JOSS II | RAND的Chuck Baker | JOSS I |
1966 | ALGOL W | Niklaus Wirth, C. A. R. Hoare | ALGOL 60 |
1966 | FORTRAN 66 |
| FORTRAN IV |
1966 | ISWIM(概念) | Peter J. Landin | LISP |
1966 | CORAL66 |
| ALGOL 60 |
1966 | APL (实现) | Kenneth E. Iverson | 无(独有的语言) |
1967 | BCPL | Martin Richards | CPL |
1967 | MUMPS | 麻省总医院(Massachusetts General Hospital) | FORTRAN, TELCOMP |
1967 | Simula 67(实现) | Norsk Regnesentral的Ole-Johan Dahl、 Bjørn Myhrhaug、 Kristen Nygaard | ALGOL 60 |
1967 | InterLisp | D.G. Bobrow 和 D.L. Murphy | Lisp |
1967 | EXAPT | 亚琛工业大学(RWTH Aachen University)和柏林工业大学(TU Berlin)的Herwart Opitz、Wilhelm Simon、 Günter Spur、 and Gottfried Stute at | APT |
1967 | SNOBOL4 | Ralph Griswold等 | SNOBOL3 |
1967 | XPL | 加利福尼亚大学圣克鲁兹分校(University of California, Santa Cruz)William M. McKeeman等 | PL/I |
|
| 斯坦福大学(Stanford University)J. J. Horning |
|
1967 | Space Programming Language (SPL) | 系统发展公司(System Development Corporation,SDC) | JOVIAL |
1968 | ALGOL 68 (UNESCO/IFIP标准版) | Adriaan van Wijngaarden, Barry J. Mailloux, John E. L. Peck and Cornelis H. A. Koster, et al. | ALGOL 60 |
1968 | POP-1 | Rod Burstall, Robin Popplestone | COWSEL |
1968 | DIBOL-8 | DEC | DIBOL |
1968 | Forth (概念) | Moore |
|
1968 | LOGO | Wally Feurzeig, Seymour Papert, Cynthia Solomon | LISP |
1968 | MAPPER | Unisys | CRT RPS |
1968 | REFAL(实现) | Valentin Turchin | 无(独有的语言) |
1968 | TTM(实现) | 加州理工学院( California Institute of Technology)Steven Caine 和 E. Kent Gordon | GAP, GPM |
1968 | PILOT | 加利福尼亚大学旧金山分校(University of California, San Francisco)的John Amsden Starkweather | Computest |
1969 | PL/I (实现) | IBM | ALGOL 60, COBOL, FORTRAN |
1969 | B | Ken Thompson以及 Dennis Ritchie | BCPL |
1969 | Polymorphic Programming Language (PPL) | 哈佛大学(Harvard University)的Thomas A. Standish |
|
1969 | SETL | 库朗数学科学研究所(Courant Institute of Mathematical Sciences)的Jack Schwartz | ALGOL 60 |
1969 | TUTOR | Paul Tenczar 以及伊利诺伊大学香槟分校(University of Illinois at Urbana–Champaign) |
|
1969 | Edinburgh IMP | 爱丁堡大学(Edinburgh University) | Algol 60, Autocode, Atlas Autocode |
1970s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1970 | Forth (实现) | Charles H. Moore |
|
1970 | POP-2 | Robin Popplestone | POP-1 |
1970 | SAIL | Dan Swinehart 和 Bob Sproull | ALGOL-60 |
1970 | Pascal | Niklaus Wirth, Kathleen Jensen | ALGOL 60, ALGOL W |
1970 | BLISS | 卡内基梅隆大学( Carnegie Mellon University)Wulf, Russell, Habermann | ALGOL |
1971 | KRL | 斯坦福大学的Daniel G. Bobrow at Xerox PARC, Terry Winograd | KM, FRL (MIT) |
1971 | Sue | 多伦多大学(University of Toronto)Ric Holt 等 | Pascal, XPL |
1971 | Compiler Description Language (CDL) | Koster at University of Nijmegen的Cornelis H.A. |
|
1972 | Smalltalk-72 | Alan Kay, Adele Goldberg, Dan Ingalls, Xerox PARC | Simula 67 |
1972 | PL/M | Digital Research的Gary Kildall | PL/I, ALGOL, XPL |
1972 | K&R C | Dennis Ritchie | B, BCPL, ALGOL 68 |
1972 | INTERCAL | Don Woods 和 James M. Lyon | 无(独有的语言) |
1972 | Prolog | Alain Colmerauer | 2-level W-Grammar |
1972 | Structured Query language (SQL) | IBM | ALPHA, Quel (Ingres) |
1973 | COMAL | Børge Christensen, Benedict Løfstedt | Pascal, BASIC |
1973 | ML | Robin Milner |
|
1973 | LIS | CII Honeywell Bull的Jean Ichbiah 等 | Pascal, Sue |
1973 | Speakeasy-3 | 美国阿贡国家实验室的Stanley Cohen, Steven Pieper | Speakeasy-2 |
1974 | CLU | Barbara Liskov | ALGOL 60, Lisp, Simula |
1974 | MAINSAIL | 斯坦福大学 | SAIL |
1974 | GRASS | Thomas A. DeFanti | BASIC |
1974 | BASIC FOUR | MAI BASIC Four Inc. | Business BASIC |
1974 | PROSE 建模语言 | CDC 6600 Cybernet Services | SLANG, FORTRAN |
1975 | ABC | Leo Geurts 和 Lambert Meertens | SETL |
1975 | Irvine Dataflow(概念) | 加州大学欧文分校( University of California, Irvine)Arvind? |
|
1975 | PROSE modeling language Time-Sharing Version | CDC 6400 Cybernet KRONOS Services | SLANG, FORTRAN |
1975 | Scheme | Gerald Jay Sussman, Guy L. Steele, Jr. | LISP |
1975 | Altair BASIC | Bill Gates, Paul Allen | BASIC |
1975 | CS-4 | James S. Miller, Benjamin M. Brosgol et al. at Intermetrics | ALGOL 68, BLISS, ECL, HAL |
1975 | Modula | Niklaus Wirth | Pascal |
1976 | Plus | 英属哥伦比亚大学(University of British Columbia)Allan Ballard, Paul Whaley | Pascal, Sue |
1976 | Smalltalk-76 | Xerox PARC | Smalltalk-72 |
1976 | Mesa | Xerox PARC | ALGOL |
1976 | SAM76 | Claude A.R. Kagan | LISP, TRAC |
1976 | Ratfor | Brian Kernighan | C, FORTRAN |
1976 | S | 贝尔实验室(Bell Labs)的John Chambers | APL, PPL, Scheme |
1976 | SAS | SAS Institute |
|
1976 | Integer BASIC | Steve Wozniak | BASIC |
1977 | FP | John Backus | 无(独有的语言) |
1977 | Bourne Shell (sh) | Stephen R. Bourne | 无(独有的语言) |
1977 | Commodore BASIC | Jack Tramiel | BASIC |
1977 | IDL | David Stern of Research Systems Inc | Fortran |
1977 | Standard MUMPS |
| MUMPS |
1977 | Icon (概念) | Ralph Griswold | SNOBOL |
1977 | Red | 美国国防部( US Dept of Defense)Intermetrics的Benjamin M. Brosgol等 | ALGOL 68, CS-4 |
1977 | Blue | 美国国防部SofTech的John B. Goodenough等 | ALGOL 68 |
1977 | Yellow | 美国国防部SRI国际研究所的Jay Spitzen 等 | ALGOL 68 |
1977 | Euclid | 多伦多大学的Butler Lampson at Xerox Parc, Ric Holt 以及 James Cordy |
|
1977 | Applesoft BASIC | Marc McDonald 和 Ric Weiland | BASIC |
1978 | RAPT | Pat Ambler 和 Robin Popplestone | APT |
1978 | C shell | Bill Joy | C |
1978 | RPG III | IBM | FARGO, RPG, RPG II |
1978 | HAL/S | Intermetrics为NASA设计的 | XPL |
1978 | Applesoft II BASIC | Marc McDonald 和 Ric Weiland | Applesoft BASIC |
1975 | Irvine Dataflow (实现) | 加州大学欧文分校 Arvind 和 Gostelow |
|
1978? | MATLAB | 新墨西哥大学(University of New Mexico)Cleve Moler | Fortran |
1978? | SMALL | 奥克兰大学(University of Auckland)Nevil Brownlee | Algol60 |
1978 | VisiCalc | VisiCorp的Dan Bricklin, Bob Frankston | 无(独有的语言) |
1979 | Modula-2 | Niklaus Wirth | Modula, Mesa |
1979 | REXX | IBM Mike Cowlishaw | PL/I, BASIC, EXEC 2 |
1979 | AWK | Alfred Aho, Peter J. Weinberger, Brian Kernighan | C, SNOBOL |
1979 | Icon(实现) | Ralph Griswold | SNOBOL |
1979 | Vulcan dBase-II | Wayne Ratliff | 无(独有的语言) |
1980s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1980 | Ada 80 (MIL-STD-1815) | CII Honeywell Bull的Jean Ichbiah | Green |
1980 | 带类的C | Bjarne Stroustrup | C, Simula 67 |
1980 | Applesoft III | 苹果电脑公司 | Applesoft II BASIC |
1980 | Apple III Microsoft BASIC | 微软 | Microsoft BASIC |
1980–81 | CBASIC | Gordon Eubanks | BASIC, Compiler Systems, Digital Research |
1981 | BBC BASIC | Acor电脑公司, Sophie Wilson | BASIC |
1981 | IBM BASICA | 微软 | BASIC |
1982? | Speakeasy-IV | Speakeasy电脑公司的Stanley Cohe等 | Speakeasy-3 |
1982? | Draco | Chris Gray | Pascal, C, ALGOL 68 |
1982 | PostScript | Warnock | InterPress |
1982 | Turing | 多伦多大学 Ric Holt 和 James Cordy | Euclid |
1983 | GW-BASIC | 微软 | IBM BASICA |
1983 | Turbo Pascal | Borland 的Hejlsberg | Pascal |
1983 | Ada 83 (ANSI/MIL-STD-1815A) | Alsys的Jean Ichbiah | Ada 80, Green |
1983 | Objective-C | Brad Cox | Smalltalk, C |
1983 | C++ | Bjarne Stroustrup | C with Classes |
1983 | True BASIC | 达特茅斯学院 John George Kemeny、Thomas Eugene Kurtz | BASIC |
1983 | occam | David May | EPL |
1983? | ABAP | SAP AG | COBOL |
1983 | KornShell (ksh) | David Korn | sh |
1983 | Clascal | 苹果电脑公司 | Pascal |
1984 | CLIPPER | Nantucket | dBase |
1984 | Common Lisp | Guy L. Steele, Jr.等等 | LISP |
1984 | Coq | INRIA |
|
1984 | RPL | Hewlett-Packard | Forth, Lisp |
1984 | Standard ML |
| ML |
1984 | Redcode | Alexander Dewdney 和 D.G. Jones |
|
1984 | OPL | Psion | BASIC |
1985 | PARADOX | Borland | dBase |
1985 | QuickBASIC | 微软 | BASIC |
1986 | Clarion | Bruce Barrington |
|
1986 | CorVision | Cortex | INFORM |
1986 | Eiffel | Bertrand Meyer | Simula 67, Ada |
1986 | GFA BASIC | Frank Ostrowski | BASIC |
1986 | Informix-4GL | Informix |
|
1986 | LabVIEW | National Instruments |
|
1986 | Miranda | 肯特大学 David Turner |
|
1986 | Object Pascal | 苹果电脑公司 | Pascal |
1986 | PROMAL |
| C |
1986 | Erlang | 爱立信(Ericsson)Joe Armstrong等 | Prolog |
1987 | Ada ISO 8652:1987 | ANSI/MIL-STD-1815A unchanged | Ada 83 |
1987 | Self (concept) | Sun公司 | Smalltalk |
1987 | occam 2 | David May和 INMOS | occam |
1987 | HyperTalk | 苹果电脑公司 | none (unique language) |
1987 | Perl | Larry Wall | C, sed, awk, sh |
1987 | Oberon | Niklaus Wirth | Modula-2 |
1987 | Mathematica (Wolfram Language) | Wolfram Research | none (unique language) |
1987 | Turbo Basic | Robert 'Bob' Zale | BASIC/Z |
1987 | Clean | 奈梅亨大学软件技术研究组 | none (unique language) |
1988 | Octave |
| MATLAB |
1988 | Tcl | John Ousterhout | Awk, Lisp |
1988 | STOS BASIC | François Lionet 和 Constantin Sotiropoulos | BASIC |
1988 | Actor | 白水时间组织Charles Duff | Forth, Smalltalk |
1988 | Object REXX | Simon C. Nash | REXX, Smalltalk |
1988 | SPARK | Bernard A. Carré | Ada |
1988 | A+ | Arthur Whitney | APL |
1988 | Hamilton C shell | Nicole Hamilton | C shell |
1988-1989 | C90 | C90 ISO/IEC 9899:1990 |
|
1989 | Turbo Pascal OOP | Borland的Anders Hejlsberg | Turbo Pascal, Object Pascal |
1989 | Modula-3 | DEC 、 Olivetti的Cardeli等 | Modula-2 |
1989 | PowerBASIC | Robert 'Bob' Zale | Turbo Basic |
1989 | VisSim | Visual Solutions的Peter Darnell |
|
1989 | LPC | Lars Pensjö |
|
1989 | Bash | Brian Fox | Bourne shell, C shell, KornShell |
1989 | Magik | Smallworld系统公司的Arthur Chance | Smalltalk |
1990s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
1990 | Sather | Steve Omohundro | Eiffel |
1990 | AMOS BASIC | François Lionet 及 Constantin Sotiropoulos | STOS BASIC |
1990 | AMPL | 贝尔实验室的 Robert Fourer, David Gay 和 Brian Kernighan |
|
1990 | Object Oberon | H Mössenböck, J Templ, R Griesemer | Oberon |
1990 | J | Iverson Software的Kenneth E. Iverson, Roger Hui | APL, FP |
1990 | Haskell |
| Miranda |
1990 | EuLisp |
| Common Lisp, Scheme |
1990 | Z Shell (zsh) | 普林斯顿大学的Paul Falstad | ksh |
1991 | GNU E | David J. DeWitt, Michael J. Carey | C++ |
1991 | Oberon-2 | Hanspeter Mössenböck, Wirth | Object Oberon |
1991 | Oz | Gert Smolka及他的学生 | Prolog |
1991 | Q | Albert Gräf |
|
1991 | Visual Basic | Alan Cooper(后来卖给了微软) | QuickBASIC |
1992 | Borland Pascal |
| Turbo Pascal OOP |
1992 | Dylan | 苹果公司 | Common Lisp, Scheme |
1992 | S-Lang | John E. Davis | PostScript |
1993? | Self (implementation) | Sun公司 | Smalltalk |
1993 | Amiga E | Wouter van Oortmerssen | DEX, C, Modula-2 |
1993 | Brainfuck | Urban Müller | P'′ |
1993 | LiveCode Transcript |
| HyperTalk |
1993 | AppleScript | 苹果公司 | HyperTalk |
1993 | K | Arthur Whitney | APL, Lisp |
1993 | Lua | PUC-Rio大学Tecgraf 实验室的Roberto Ierusalimschy | Scheme, SNOBOL, Modula, CLU, C++ |
1993 | R | Robert Gentleman 和 Ross Ihaka | S |
1993 | ZPL | 华盛顿大学的Chamberlain 等 | C |
1993 | NewtonScript | Walter Smith | Self, Dylan |
1993 | Euphoria | Robert Craig | SNOBOL, AWK, ABC, Icon, Python |
1994 | Claire | Yves Caseau | Smalltalk, SETL, OPS5, Lisp, ML, C, LORE, LAURE |
1994 | ANSI Common Lisp |
| Common Lisp |
1994 | RAPID | ABB Group | ARLA |
1994 | Pike | Linköping University(瑞士)Fredrik Hübinette | LPC, C, µLPC |
1994 | ANS Forth | Elizabeth Rather等 | Forth |
1995 | Ada 95 | Intermetrics的S. Tucker Taft等 | Ada 83 |
1995 | Borland Delphi | Borland的Anders Hejlsberg | Borland Pascal |
1995 | ColdFusion (CFML) | Allaire |
|
1995 | Java | Sun的James Gosling | C, Simula 67, C++, Smalltalk, Ada 83, Objective-C, Mesa |
1995 | LiveScript | 网景(Netscape)的Brendan Eich | Self, C, Scheme |
1995 | Mercury | 墨尔本大学的Zoltan Somogyi | Prolog, Hope, Haskell |
1995 | PHP | Rasmus Lerdorf | Perl |
1995 | Ruby | Yukihiro Matsumoto | Smalltalk, Perl |
1995 | JavaScript | Brendan Eich at Netscape | LiveScript |
1995 | Racket | 网景的Matthew Flatt | Scheme, Lisp |
1996 | Curl | MIT的David Kranz, Steve Ward, Chris Terman | Lisp, C++, Tcl/Tk, TeX, HTML |
1996 | Lasso | Blue World Communications Inc. |
|
1996 | Perl Data Language (PDL) | Karl Glazebrook, Jarle Brinchmann, Tuomas Lukka, 以及 Christian Soeller | APL, Perl |
1996 | VBScript | 微软 | Visual Basic |
1996 | OCaml | INRIA | Caml Light, Standard ML |
1996 | NetRexx | Mike Cowlishaw | REXX |
1997 | Component Pascal | Oberon microsystems, Inc | Oberon-2 |
1997 | E | Mark S. Miller | Joule, Original-E |
1997 | Pico | Free University of Brussels | Scheme |
1997 | Squeak | Alan Kay, et al. at Apple Computer Inc. | Smalltalk-80, Self |
1997 | ECMAScript | ECMA TC39-TG1 | JavaScript |
1997 | F-Script | Philippe Mougin | Smalltalk, APL, Objective-C |
1997 | ISLISP | ISO Standard ISLISP | Common Lisp |
1997 | Tea | Jorge Nunes | Java, Scheme, Tcl |
1997 | REBOL | Carl Sassenrath, Rebol Technologies | Self, Forth, Lisp, Logo |
1998 | Logtalk | Paulo Moura (后来去了 University of Coimbra) | Prolog |
1998 | ActionScript | Gary Grossman | ECMAScript |
1998 | Standard C++ | ANSI/ISO Standard C++ | C++, Standard C, C |
1998 | M2001 | Ronald E. Prather, Trinity University (Texas) | none (unique language) |
1998 | PureBasic | Frederic Laboureur, Fantaisie Software |
|
1998 | UnrealScript | Tim Sweeney at Epic Games | C++, Java |
1998 | XSLT (+ XPath) | W3C, James Clark | DSSSL |
1998 | Xojo (REALbasic at the time) | Xojo, Inc., Andrew Barry | Visual Basic |
1999 | C99 | C99 ISO/IEC 9899:1999 |
|
1999 | Gambas | Benoît Minisini | Visual Basic, Java |
1999 | Game Maker Language (GML) | Mark Overmars | Game Maker |
1999 | Harbour | Antonio Linares | dBase, Clipper |
2000s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
2000 | Join Java | G Stewart von Itzstein | Java |
2000 | DarkBasic | The Game Creators |
|
2000 | C# | 微软 (ECMA)的Anders Hejlsberg | C, C++, Java, Delphi, Modula-2 |
2001 | Joy | Manfred von Thun | FP, Forth |
2001 | AspectJ | Gregor Kiczales, Xerox PARC | Java, Common Lisp |
2001 | D | Walter Bright, Digital Mars | C, C++, C#, Java |
2001 | Processing | Casey Reas 和 Benjamin Fry | Java, C, C++[10] |
2001 | Visual Basic .NET | 微软 | Visual Basic |
2001 | GDScript (GDS) | Juan Linietsky, Ariel Manzur (OKAM Studio) | Godot |
2001 | Shakespeare Programming Language | Jon Åslund and Karl Hasselström. |
|
2002 | Io | Steve Dekorte | Self, NewtonScript, Lua |
2002 | Gosu | Guidewire Software | GScript |
2002 | Scratch | Mitchel Resnick, John Maloney, Natalie Rusk, Evelyn Eastmond, Tammy Stern, Amon Millner, Jay Silver, and Brian Silverman | Logo, Smalltalk, Squeak, E-Toys, HyperCard, AgentSheets, StarLogo, Tweak, BYOB |
2003 | Nemerle | Wrocław大学 | C#, ML, MetaHaskell |
2003 | Factor | Slava Pestov | Joy, Forth, Lisp |
2003 | Scala | Martin Odersky | Smalltalk, Java, Haskell, Standard ML, OCaml |
2003 | C++03 | C++ ISO/IEC 14882:2003 | C++, Standard C, C |
2003 | Squirrel | Alberto Demichelis | Lua |
2003 | Boo | Rodrigo B. de Oliveira | Python, C# |
2004 | Subtext | Jonathan Edwards | none (unique language) |
2004 | Alma-0 | Krzysztof Apt, Centrum Wiskunde & Informatica | none (unique language) |
2004 | FreeBASIC | Andre Victor | QBasic |
2004 | Groovy | James Strachan | Java |
2004 | Little b | Aneil Mallavarapu, Harvard Medical School, Department of Systems Biology | Lisp |
2005 | Fantom | Brian Frank, Andy Frank | C#, Scala, Ruby, Erlang |
2005 | F# | Don Syme, Microsoft Research | OCaml, C#, Haskell |
2005 | Haxe | Nicolas Cannasse | ActionScript, OCaml, Java |
2005 | Oxygene | RemObjects Software | Object Pascal, C# |
2005 | PWCT | Mahmoud Samir Fayed | none (unique language) |
2005 | Seed7 | Thomas Mertes | none (unique language) |
2006 | Cobra | ChuckEsterbrook | Python, C#, Eiffel, Objective-C |
2006 | Windows PowerShell | 微软 | C#, ksh, Perl, CL, DCL, SQL |
2006 | OptimJ | Ateji | Java |
2006 | Fortress | Guy Steele | Scala, ML, Haskell |
2006 | Vala | GNOME | C# |
2007 | Ada 2005 | Ada Rapporteur Group | Ada 95 |
2007 | Agda | Ulf Norell | Coq, Epigram, Haskell |
2007 | QB64 | Galleon, QB64Team | QBasic |
2007 | Clojure | Rich Hickey | Lisp, ML, Haskell, Erlang |
2007 | LOLCODE | Adam Lindsay | none (unique language) |
2007 | Oberon-07 | Wirth | Oberon |
2007 | Swift (平行脚本语言) | 芝加哥大学 阿贡国家实验室 |
|
2008 | Nim | Andreas Rumpf | Python, Lisp, Object Pascal |
2008 | Genie | Jamie McCracken | Python, Boo, D, Object Pascal |
2008 | Pure | Albert Gräf | Q |
2009 | Chapel | Brad Chamberlain, Cray Inc. | HPF, ZPL |
2009 | Go | C, Oberon, Limbo, Smalltalk | |
2009 | CoffeeScript | Jeremy Ashkenas | JavaScript, Ruby, Python, Haskell |
2009 | Idris | Edwin Brady | Haskell, Agda, Coq |
2009 | Parasail | S. Tucker Taft, AdaCore | Modula, Ada, Pascal, ML |
2009 | Whiley | David J. Pearce | Java, C, Python |
2009 | Dafny | K. Rustan M. Leino | Java, Spec# |
2010s 的编程语言
出现时间 | 语言名字 | 主要创立者/组织 | 前身 |
2010 | Rust | Graydon Hoare, Mozilla | Alef, C++, Camlp4, Erlang, Hermes, Limbo, Napier, Napier88, Newsqueak, NIL, Sather, Standard ML |
2011 | C11 | C11 ISO/IEC 9899:2011 |
|
2011 | Ceylon | Gavin King, 红帽公司 | Java |
2011 | Dart | 谷歌 | Java, JavaScript, CoffeeScript, Go |
2011 | C++11 | C++ ISO/IEC 14882:2011 | C++, Standard C, C |
2011 | Kotlin | JetBrains | Java, Scala, Groovy, C#, Gosu |
2011 | Red | Nenad Rakočević | Rebol, Scala, Lua |
2011 | Opa | MLstate | OCaml, Erlang, JavaScript |
2012 | Elixir | José Valim | Erlang, Ruby, Clojure |
2012 | Elm | Evan Czaplicki | Haskell, Standard ML, OCaml, F# |
2012 | TypeScript | Anders Hejlsberg, Microsoft | JavaScript, CoffeeScript |
2012 | Julia | Jeff Bezanson, Stefan Karpinski, Viral Shah, Alan Edelman, MIT | MATLAB, Lisp, C, Fortran, Mathematica[11] (strictly its Wolfram Language), Python, Perl, R, Ruby, Lua[12] |
2012 | P | Vivek Gupta, Ethan Jackson, Shaz Qadeer, Sriram Rajamani, Microsoft |
|
2012 | Ada 2012 | ARA and Ada Europe (ISO/IEC 8652:2012) | Ada 2005, ISO/IEC 8652:1995/Amd 1:2007 |
2013 | P4 | P4 Language Consortium (P4.org) |
|
2013 | PureScript | Phil Freeman | Haskell |
2013 | Hopscotch | Hopscotch Technologies | Scratch |
2013 | Cuneiform | Jörgen Brandt | Swift (parallel scripting language) |
2014 | Crystal | Ary Borenszweig, Manas Technology Solutions | Ruby, C, Rust, Go, C#, Python |
2014 | Hack | 脸书 | PHP |
2014 | Swift | 苹果公司 | Objective-C, Rust, Haskell, Ruby, Python, C#, CLU |
2014 | C++14 | C++ ISO/IEC 14882:2014 | C++, Standard C, C |
2015 | Raku | Larry Wall, The Rakudo Team | Perl, Haskell, Python, Ruby |
2015 | Zig | Andrew Kelley | C, C++, LLVM IR, Go, Rust |
2016 | Reason | Jordan Walke | JavaScript, OCaml[13] |
2017 | C++17 | C++ ISO/IEC 14882:2017 | C++, Standard C, C |
2017 | Ballerina | WSO2, Open Source[14] | Java, Javascript, Go, Rust, C# |
2018 | C18 | C18 ISO/IEC 9899:2018 |
|
2018 | Fortran 2018 | ISO/IEC JTC1/SC22/WG5 N2150:2018 | Fortran 2008 |
2019 | Bosque | 微软的Mark Marron | JavaScript, TypeScript, ML |
原文链接:
https://www.statisticsanddata.org/10-programming-languages-you-can-learn-in-2021/#page-content
更多内容推荐
Swift 在好大夫 APP 医患两端的打怪升级
从好大夫的iOS客户端团队角度出发,接入swift需要有哪些准备工作?基础框架如何设计?
硬核解读:为什么 Rust 的 Unsafe 关键字有效?
为什么Rust的unsafe关键字有效,而在C/C++中类似的方法却行不通。
《架构师》(2020 年 9 月)
本期推荐内容:思科前员工为报复恶意删除 400 多台虚拟机,公司损失超 1600 万;一个微服务业务系统的中台构建之路;深度解读:实时数仓架构对比与基于 Flink 的典型 ETL 场景实现。
解读 Go 语言的 2020:变革前夜
我们对Go语言有着很多的期望。
Redwood:将 Ruby on Rails 开发体验带到 JavaScript
GitHub联合创始人Tom Preston-Werner发布了RedwoodJS,一款全新的面向边缘的全栈JavaScript Web框架。
2020 年 InfoQ 最受欢迎的文章排行榜 | 前端篇
2020 年 InfoQ 最受欢迎的文章排行榜来了!
这 10 个 Python 技能,被低估了
一旦掌握这些技能,我敢说,你将会成为一个更“性感”的数据科学家。
前端周报:Flutter 实现 Windows 支持;Windows XP 源代码泄露,微软:正在调查;苹果开源 Swift System
前端周报专注大前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点,分为新闻热点、深度阅读、开源项目 & 工具等栏目。
Vue 新语法糖引争议,网友:魔改 JavaScript,这是想挑战标准?
近日,Vue 作者尤雨溪在社区意见征求稿(RFC)上提交了一份 Ref 语法糖的提案,引起了开发者们的争议。
2020 年 InfoQ 最受欢迎的文章排行榜 | 编程语言篇
系列之第七篇:编程语言 TOP 10
十个问题弄清 JVM&GC(二)
本文会从以下10个问题为切入点,带着大家一起全面了解一下JVM的方方面面。JVM、JRE和JDK的区别和联系JVM是什么?
应用程序现代化的挑战和机遇
维护在生产环境中运行的应用程序以及将它们迁移到云端,这两大压力压在了开发团队和平台团队身上。应用程序现代化需要通过文档、产品和框架来扩展和提高效率。本文讨论了应用程序现代化的原因和方法。
PHP 8.0 正式发布:支持 JIT 编译器,性能提升高达 3 倍
PHP 8.0是PHP语言的最新主要版本,带来了许多新特性和优化
Julia 生产环境就绪了吗?Bogumił Kamiński 的访谈
JuliaCon 2020刚刚结束,华沙经济学院的教授Bogumił Kamiński总结了Julia语言的状态和生态系统,并宣称Julia终于已经达到生产环境就绪。
新一代垃圾回收器 ZGC 的探索与实践
本文介绍ZGC在美团低延时场景中的应用,以及在生产环境中取得的一些成果。。
PHP 7 入门:函数的增强
在本文中,我们将会探讨PHP 7中函数的增强,包括用于数组常量定义的define()、从Generator函数中返回值、Generator代理等。
Python 中最流行的十个标准库
Python 以其有用的库和包而著称,即使没有软件工程背景的人也能编程。
2020 年 InfoQ 最受欢迎的文章排行榜 | 编程语言篇
系列之第七篇:编程语言 TOP 10
40 岁 C++ 没有中年危机
C++ 之父 : 诞生40年来, C++ 生命力不减的秘密
手把手教你用 Go 搭建一个 CLI 应用
作者手把手教你用Go搭建一个命令行应用go-grab-xkcd,让你进一步了解Go语法。
推荐阅读
电子书
大厂实战PPT下载
换一换 王昱杰 | 腾讯互娱 高级测试工程师
杨紫陌 | 爱奇艺 研究员
王启军 | 华为云 架构师
评论