整理编程语⾔列表⼤全,你最熟悉哪些?
计算机编程语⾔可⽤于将指令传达给计算机。下⾯可能是史上最全编程语⾔列表,我将它们分为以下⼏类,你掌握了哪些?
解释型编程语⾔
函数式编程语⾔
编译型编程语⾔
过程式编程语⾔
脚本编程语⾔
标记编程语⾔
基于逻辑的编程语⾔
并发编程语⾔
⾯向对象编程语⾔
解释型编程语⾔
解释型语⾔是这样⼀种编程语⾔,其⼤部分实现直接执⾏指令,⽽⽆需先将程序编译成机器语⾔指令。解释器直接执⾏程序,它会将每个语句翻译成已编译成了机器代码的⼀个或多个⼦程序的序列。()
APL
APL 以《编程语⾔(A Programming Language)》⼀书命名(Iverson,Kenneth E.,1962),它是⼀种数组编程语⾔。它可以在多个数据阵列上同时⼯作。 它是⼀种解释型、可交互和函数式的编程语⾔。
AutoIt
它是⾃由软件,是⼀种⽤于 Microsoft Windows 的⾃动化语⾔。 主要⽬的是创建可⽤于在 Windows 上执⾏某些重复任务的⾃动化脚本。
BASIC
于1964年由约翰·乔治·凯⽶尼(John George Kemeny)和托特·尤⾦·库尔茨(Thomas Eugene Kurtz)
在达特茅斯(Dartmouth)开发,它是初学者多⽤符号指令代码(Beginner’s All-purpose Symbolic Instruction Code)的缩写。它的⽬的是为⾮科学⼈⼠提供⼀个使⽤电脑的途径。
Eiffel
它是⼀种被 ISO 标准化了的⾯向对象编程语⾔,⽤于开发可扩展和可重复使⽤的软件。它是⼀个可⾯向许多⾏业的开发平台,如⾦融,航空航天和视频游戏。
Forth
它是⼀种结构化的命令式编程语⾔,其实现基于堆栈。它⽀持交互式的命令执⾏以及对命令序列的编译。
Frink
由 Alan Eliasen 开发,以 John Frink 教授命名——他是⼀位颇受欢迎的虚构⼈物。它基于 Java 虚拟机,专注于科学和⼯程领域。其突出特点是能通过所有的能让数量包含其测量单位的计算,来对测量单位进⾏跟踪。
Game Maker 语⾔
它是⼀种解释型的计算机编程语⾔,旨在与 Game Maker 配合使⽤—— Game Maker 是⼀种游戏制作应⽤程序。荷兰计算机科学家马克·奥马斯(Mark Overmars)设计了这种语⾔。
ICI
ICI 是由 Tim Long 于1992年设计的,它是⼀种通⽤的解释型计算机编程语⾔。它⽀持动态输⼊,灵活的数据类型以及其它的⼀些类似于C 的语⾔结构。
J
Ken Iverson 和 Roger Hui 开发了这个只需要使⽤基础 ASCII 字符集的编程语⾔。它是⼀种数组编程语⾔,适⽤于数学和统计操作。
Lisp
Lisp是如今正在被⼴泛使⽤的第⼆古⽼的⾼级编程语⾔。其名称 Lisp 派⽣⾃“列表处理语⾔(List Processing Language)”。Lisp ⽀持的重要数据结构之⼀是链表。 Lisp 程序会将源代码当做是数据结构。
Lua
计算机图形技术组的成员在1993年开发出了 Lua。它被设计成为脚本语⾔,是⼀种不可获取的过程式编程语⾔,以简单⽽强⼤⽽闻名。
M
M 是 MUMPS 的缩写,它是为医疗保健⾏业⽽创建的⼀种编程语⾔。M 语⾔是由医学信息技术的创始⼈ Neil Pappalardo 以及他的同事开发出来的。
Pascal
它是⼀种过程式编程语⾔,旨在利⽤上数据结构化和结构化编程的概念。瑞⼠计算机科学家 Niklaus Wirth 设计了这种语⾔,是以法国数学家和哲学家 Blaise Pascal 来命名的。
PCASTL
它是 Parent and Childset Accessible Syntax Tree Language(可访问⽗和⼦集语法树语⾔)的缩写,是由 Philippe Choquette 开发出来的⾼级语⾔,属于解释型的计算机编程语⾔类型。 它是专门为⾃修改代码⽽设计的。
Perl
Perl 是⼀种⽀持动态编程的⾼级解释型编程语⾔。它是由 Larry Wall 开发的,⽽ Larry Wall 则是 NASA 的系统管理员。它为程序员提供了⽂本处理的能⼒,并融合了 C、Lisp 还有 Awk 等各种语⾔的功能特性。
PostScript
它主要在桌⾯出版领域中使⽤,被称为页⾯描述语⾔。它是⼀种基于堆栈的动态编程语⾔,由美国计算机科学家 John Warnock 和计算机科学领域著名⼈物 Charles Geschke 开发。这些开发⼈员后来⼀起创⽴了⾮常着名的 Adobe Systems 公司。
Python
它是⼀种⽀持强制命令,⾯向对象和函数式编程样式的⾼级编程语⾔。它与 Perl 在动态类型系统和⾃动内存管理⽅⾯有相似之处。Python 最初于1991年由荷兰计算机程序员 Guido van Rossum 发布,它是⼀种基于社区的开放性语⾔,其开发由 Python Software Foundation 来进⾏管理。
REXX
Restructured Extended Executor(重构扩展执⾏器)的简称,它是由 IBM 开发的解释型语⾔。它被设计出来的⽬的是成为⼀种易于学习和阅读的语⾔。 NetRexx 是 IBM 提供的基于 REXX 的⾯向对象
编程实现。Object REXX 是基于 REXX 的⾯向对象脚本语⾔。
Ruby
在20世纪90年代,⽇本兴起了要开发这样⼀种语⾔的动⼒。它具有与 Perl 类似的动态类型系统和⾃动内存管理功能。它⽀持多种编程样式,是⼀种动态的⾯向对象语⾔。
S-Lang
S-Lang ⼀开始是作为⼀种基于堆栈的语⾔来⽽开发出来,⽽现在已经演变为⼀种类似于 C 的语⾔。它是由 John E. Davis 开发出来的。
Spin
Spin 是⼀种多任务且⾯向对象的编程语⾔,其编译器会将代码转换为字节码。多个 Spin 代码线程可以在同时运⾏,从⽽实现多任务处理。Spin 是由 Parallax 的 Chip Gracey 开发出来的。
函数式编程语⾔
函数式编程语⾔ 定义每次的计算作为数学求值。他们把焦点集中在函数的应⽤。⼤量的函数编程语⾔被绑定在数学计算上。
Charity
它是⼀种纯净的函数式,⾮图灵完备语⾔,这意味着所有的程序都可以被保证能终⽌。Charity 是由加拿⼤的⼀所公⽴⼤学 —— Calgary ⼤学设计的。
Clean
它是⼀种纯净的函数式编程语⾔,拥有跨平台能⼒,⾃动垃圾收集机制,多数据结构和引⽤透明性,这些能⼒意味着⼀个函数,只要给它⼀个输⼊将总是会有⼀个输出。
Curry
目前流行的编程语言
它是⼀种函数逻辑编程语⾔,实现了函数式与逻辑编程,还有约束式编程。在约束式编程⽅法中,变量之间的关系是以约束的形式表⽰的。
Erlang
它是⼀种并发编程语⾔,包含了⼀系列⽀持函数式编程的⼦集。爱⽴信将 Erlang 作为⼀种分布式软实时与容错语⾔来进⾏开发,并于1998年将其作为⼀种开放源代码的计算机编程语⾔发布,是最常⽤的函数式编程语⾔之⼀。
F#
它是⾯向 .NET Framework 的⼀种编程语⾔,同时⽀持函数式以及命令式的⾯向对象编程。微软研究院的 Don Syme 开发了这种语⾔,他现在正在 Microsoft 开发部门进⾏参与开发⼯作。它被称作 F Sharp ,被集成到 .NET Framework 和 Visual Studio 中。
Haskell
Haskell 是以 Haskell Curry ——⼀个逻辑学家——来命名的,是⼀中标准化的纯函数式语⾔。它⽀持模式匹配,可定义运算符、单个赋值、代数数据类型以及递归函数。
Joy
它是⼀种基于函数组合的纯函数式语⾔。澳⼤利亚 La Trobe ⼤学的 Manfred von Thun 开发出了这种语⾔。
Kite
它于2006年推出,带有⼀个由⾯向对象和函数式编程功能特性混合组成的功能集合。这是⼀种可快速运⾏的语⾔。有趣的是,Kite 使⽤管道字符来进⾏函数式调⽤,⽽不像使⽤其他语⾔那样使⽤点或者箭头字符。
ML
爱丁堡⼤学的罗宾·⽶尔纳(Robin Milner)及其同事在七⼗年代推出了 ML 。因为它⽀持命令式编程,所以并⾮⼀种纯粹的函数式语⾔。标准 ML 在编译器编写者体中很受欢迎,是⼀种模块化的函数式编程语⾔。Alice 是标准 ML 的⽅⾔,⽀持分布式计算,多线程和约束式编程。Caml 是 ML 的另⼀种⽅⾔,是⼀种⽀持⾃动内存管理的静态类型语⾔。Ocaml 是作为开源项⽬开发出来的 Caml 实现。JoCaml 是基于连接演算模式的 Ocaml 版本。
Nemerle
它是专为 .NET 平台设计的⼀种静态类型编程语⾔。 Nemerle 中的程序会被编译成中间语⾔字节码。它⽀持函数式,命令式以及⾯向对象编程。
OPAL
该名称表⽰的是 Optimized Applicative Language (优化应⽤语⾔),是由柏林技术⼤学开发出来的函数式编程语⾔。
OPS5
它是⼀种基于规则的⽣产系统计算机语⾔,已经成为在专业系统中使⽤的⾸选语⾔。
Q
之所以被称为 Q ,因为它是⼀种等式(equational)编程语⾔。它是由德国美因茨⼤学 Albert Graf 设计出来的⼀种解释型函数式语⾔。它可以被描述为⽤于对表达式进⾏计算的⼀组⽅程式。
编译型编程语⾔
编译型语⾔是典型的通过编译器(将源代码⽣成机器码的翻译⼯具)⽽不是解释器(⼀步步执⾏源码,不会在运⾏前发⽣转换)实现的编程语⾔。()
Ada
它是⼀种基于 Pascal 的静态类型、结构化、命令式的编程语⾔。Jean Ichbiah 带领的 CII Honeywell Bull 团队开发了 Ada。Ada 编译器由关键任务系统验证,它是符合国际标准的计算机编程语⾔。
ALGOL
它的名称就表明了它是⼀种算法语⾔。实际上它是在20世纪50年代中期开发出来的⼀系列命令式编程语⾔。它被证明可⽤于创建像BCPL、B 和 C 这样的编程语⾔。位于 Oslo 的挪威计算机中⼼的 Ole-Johan Dahl 和 Kristen Nygaard 在它的基础上创造了 Simula。
C
贝尔电脑实验室的 Dennis Ritchie 开发了 C ⽤于 Unix 平台。它是通⽤、跨平台、过程化、命令式的编程语⾔。它⽤于实现系统软件和应⽤软件,是当今使⽤最⼴泛的计算机编程语⾔之⼀。C++ 和 C# 都是基于 C 发展⽽来。
C++
它由⾼级语⾔和低级语⾔相结合,因此被认为是⼀个中级编程语⾔。贝尔实验室的 Bjarne Stoustrup 开发了 C++,把它作为 C 语⾔的扩展。它最初被称为“含有类的C”,直到 1983 年才被称为 C++。它是⼀种⽀持过程化编程、泛型编程、⾯向对象编程和数据抽象的多样化语⾔。
[译者注:multi-paradigm 中的 paradigm 指形式,常见的编程形式包括:命令式(imperative)、函数式(functional)、申明式(declarative)、⾯向对象(object-oriented)、过程化(procedural)、逻辑化(logic)、风格化(symbolic)——参考]
C#
C Sharp 也是⼀种多样化语⾔,⽀持命令式、泛型和⾯向对象编程。它是 Microsoft .NET 框架 的⼀部分。它的⾯向对象语法与 C++ 相似。它还受到 Java 和 Delphi 的影响。
CLEO
它被称为 Clear Language for Expressing Orders (清楚表达命令的语⾔),是⽤于 LEO 计算机的计算机语⾔。
COBOL
其名称代表了 Common Business-Oriented Language (⾯向商业的通⽤语⾔),被设计⽤于商业和⾦融领域。COLBOL 2002 标准⽀持⾯向对象编程。它是⼀个⾮常古⽼的编程语⾔,但仍然在使⽤。
Cobra
它是⼀个运⾏于 .NET 框架和 Mono 框架的⾯向对象编程语⾔,由 Chunk Esterbrook 开发。它的设计受 Python 和 C# 的影响。它⽀持静态和动态类型,适⽤于单元测试。现在它是⼀个开源项⽬。
D
它最初被设计为 C++ 的增强,受 Java、Eiffel 和 C# 的影响。它是⾯向对象、命令式、多样化的系统编程语⾔,由 Digital Mars 的Walter Bright 开发。
DASL
它是 Distributed Application Specification Language (分布式应⽤程序描述语⾔) 的缩写,是由 Sun 公司开发的⼀款⾼级、强类型的编程语⾔。创建它是为了⽤来开发 Web 应⽤。
DIBOL
DIBOL 是 Digital Interactive Business Oriented Language(⾯向商业的数字互动语⾔)的简写,它是通⽤过程命令式的编程语⾔。它和COBOL 很像,适⽤于管理信息系统的开发。
Fortran
这是过程化、命令式的通⽤计算机编程语⾔,适⽤于科学计算和数值运算。⾃ IBM 于 20 世纪 50 年代开发出来,它迅速⾛红。它是结构化的编译型编程语⾔,在⾼性能计算领域⾮常流⾏。它是 Fortran95 的⼦集。Fortran 的修订版本,Fortran 2003 ⽀持⾯向对象编程。
Java
它是通⽤计算机编程语⾔,并发,基于类,⾯向对象并专门针对尽可能少的依赖来进⾏设计。编译后的 Java 代码可以不需要再次编译就运⾏于各种⽀持 Java 的平台。是现代⾮常流⾏的语⾔。
JOVIAL
它是类似 ALGOL 的⾼阶计算机编程语⾔。它适⽤于嵌⼊式系统的设计和开发。
Objective-C
它是⼀种反射式⾯向对象程序编程语⾔,在 C 的基础上添加了消息服务。
SMALL
它的名称表⽰ Small Machine Algol-like Language (类似 Glgol 的⼩型机器语⾔)。它的代码与 ALGOL 类似,⽤于在⼩型机上编程。
Smalltalk
它是反射式的⾯向对象编程语⾔,⽀持动态类型。 Alan Kay、Adele Goldberg、Dan Ingalls、Scott Wallace、Ted Kaehler 和他们在Xerox PARC 的同事开发了 Smalltalk。他们为教育⽤途设计了 Smalltalk,之后它就流⾏起来了。VisualWorks 是 Samlltalk 的优秀实现。Squeak 是 Smalltalk 的⼀种实现形式。Scratch 是基于 Squeak 的可视化编程语⾔。
Turing
它于 1982 年由加拿⼤多伦多⼤学的 Ric Holt 和 James Cordy 开发出来。它的名字是为了纪念英国计算机科学家 Alan Turing(艾兰·图灵)。它很像 Pascal,从 2007 年开始免费。
Visual Basic
这是⼀个事件驱动的编程语⾔,通过集成开发环境打包。它从 BASIC 继承了很多特性。它的图形化开发特性使初学者学习起来⾮常容易。
Visual FoxPro
它是⾯向对象和过程化编程语⾔,来源于 FoxPro。它⾃⾝集成了关系型数据库系统,不再需要额外的编程环境。它⽀持动态编程。
XL
它的诞⽣是为了⽀持概念编程,这是⼀种致⼒于将程序员脑中的概念转化为代码的编程形式。程序可以重新配置 XL 的语法和语义。
过程式编程语⾔
过程式(命令式)编程 意味着需指定程序应该达到预期状态的步骤。过程是可以通过过程调⽤引⽤的⼀组语句。 过程有助于代码中庸。 过程式编程使程序结构化,易于追踪程序流程。
Bliss
它是⼀种系统编程语⾔,是在 C 语⾔出现之前最知名的语⾔之⼀。卡内基梅隆⼤学的 W.A.Wolf、D.B. Russell 和 A.N. Habermann 发明了 Bliss 。它包括异常处理机制、协程和宏,但并不包括 goto 语句。
ChucK
它是可以在 Mac OS X、Linux 以及 Microsoft Windows 上运⾏的并发和强⾳频定时的编程语⾔。 它特别以其为程序员提供在运⾏程序中做⼀些修改的能⼒⽽著称。
CLIST
它是⼀种使⽤命令集合的形式表⽰的过程式编程语⾔,这些命令集合需要像批处理⽂件⼀样顺序执⾏。
HyperTalk
它是⼀种⾼级编程语⾔,旨在给程序员的初学者使⽤。 这种计算机语⾔的程序员被称为作者,编写程序的⾏为被称为脚本。HyperTalk 由Dan Winker 于 1987 年设计,结构上类似于 Pascal 。
Modula-2
它是1978年由 Niklaus Wirth 在 ETH 创⽴的通⽤过程式语⾔。它与 Pascal 类似,具有系统编程和多重编程功能。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。