1. 解釋型編程語言
2. 函數(shù)式編程語言
3. 編譯型編程語言
4. 過程式編程語言
5. 腳本編程語言
6. 標(biāo)記編程語言
7. 基于邏輯的編程語言
8. 并發(fā)編程語言
9. 面向?qū)ο缶幊陶Z言
解釋型編程語言
解釋型語言是這樣一種編程語言,其大部分實(shí)現(xiàn)直接執(zhí)行指令,而無需先將程序編譯成機(jī)器語言指令。解釋器直接執(zhí)行程序,它會將每個語句翻譯成已編譯成了機(jī)器代碼的一個或多個子程序的序列。(維基百科)
APL
APL 以《編程語言(A Programming Language)》一書命名(Iverson,Kenneth E.,1962),它是一種數(shù)組編程語言。它可以在多個數(shù)據(jù)陣列上同時工作。 它是一種解釋型、可交互和函數(shù)式的編程語言。
AutoIt
它是自由軟件,是一種用于 Microsoft Windows 的自動化語言。 主要目的是創(chuàng)建可用于在 Windows 上執(zhí)行某些重復(fù)任務(wù)的自動化腳本。
BASIC
于1964年由約翰·喬治·凱米尼(John George Kemeny)和托特·尤金·庫爾茨(Thomas Eugene Kurtz)在達(dá)特茅斯(Dartmouth)開發(fā),它是初學(xué)者多用符號指令代碼(Beginner’s All-purpose Symbolic Instruction Code)的縮寫。它的目的是為非科學(xué)人士提供一個使用電腦的途徑。
Eiffel
它是一種被 ISO 標(biāo)準(zhǔn)化了的面向?qū)ο缶幊陶Z言,用于開發(fā)可擴(kuò)展和可重復(fù)使用的軟件。它是一個可面向許多行業(yè)的開發(fā)平臺,如金融,航空航天和視頻游戲。
Forth
它是一種結(jié)構(gòu)化的命令式編程語言,其實(shí)現(xiàn)基于堆棧。它支持交互式的命令執(zhí)行以及對命令序列的編譯。
Frink
由 Alan Eliasen 開發(fā),以 John Frink 教授命名——他是一位頗受歡迎的虛構(gòu)人物。它基于 Java 虛擬機(jī),專注于科學(xué)和工程領(lǐng)域。其突出特點(diǎn)是能通過所有的能讓數(shù)量包含其測量單位的計(jì)算,來對測量單位進(jìn)行跟蹤。
Game Maker 語言
它是一種解釋型的計(jì)算機(jī)編程語言,旨在與 Game Maker 配合使用—— Game Maker 是一種游戲制作應(yīng)用程序。荷蘭計(jì)算機(jī)科學(xué)家馬克·奧馬斯(Mark Overmars)設(shè)計(jì)了這種語言。
ICI
ICI 是由 Tim Long 于1992年設(shè)計(jì)的,它是一種通用的解釋型計(jì)算機(jī)編程語言。它支持動態(tài)輸入,靈活的數(shù)據(jù)類型以及其它的一些類似于 C 的語言結(jié)構(gòu)。
J
Ken Iverson 和 Roger Hui 開發(fā)了這個只需要使用基礎(chǔ) ASCII 字符集的編程語言。它是一種數(shù)組編程語言,適用于數(shù)學(xué)和統(tǒng)計(jì)操作。
Lisp
Lisp是如今正在被廣泛使用的第二古老的高級編程語言。其名稱 Lisp 派生自“列表處理語言(List Processing Language)”。Lisp 支持的重要數(shù)據(jù)結(jié)構(gòu)之一是鏈表。 Lisp 程序會將源代碼當(dāng)做是數(shù)據(jù)結(jié)構(gòu)。
Lua
計(jì)算機(jī)圖形技術(shù)組的成員在1993年開發(fā)出了 Lua。它被設(shè)計(jì)成為腳本語言,是一種不可獲取的過程式編程語言,以簡單而強(qiáng)大而聞名。
M
M 是 MUMPS 的縮寫,它是為醫(yī)療保健行業(yè)而創(chuàng)建的一種編程語言。M 語言是由醫(yī)學(xué)信息技術(shù)的創(chuàng)始人 Neil Pappalardo 以及他的同事開發(fā)出來的。
Pascal
它是一種過程式編程語言,旨在利用上數(shù)據(jù)結(jié)構(gòu)化和結(jié)構(gòu)化編程的概念。瑞士計(jì)算機(jī)科學(xué)家 Niklaus Wirth 設(shè)計(jì)了這種語言,是以法國數(shù)學(xué)家和哲學(xué)家 Blaise Pascal 來命名的。
PCASTL
它是 Parent and Childset Accessible Syntax Tree Language(可訪問父和子集語法樹語言)的縮寫,是由 Philippe Choquette 開發(fā)出來的高級語言,屬于解釋型的計(jì)算機(jī)編程語言類型。 它是專門為自修改代碼而設(shè)計(jì)的。
Perl
Perl 是一種支持動態(tài)編程的高級解釋型編程語言。它是由 Larry Wall 開發(fā)的,而 Larry Wall 則是 NASA 的系統(tǒng)管理員。它為程序員提供了文本處理的能力,并融合了 C、Lisp 還有 Awk 等各種語言的功能特性。
PostScript
它主要在桌面出版領(lǐng)域中使用,被稱為頁面描述語言。它是一種基于堆棧的動態(tài)編程語言,由美國計(jì)算機(jī)科學(xué)家 John Warnock 和計(jì)算機(jī)科學(xué)領(lǐng)域著名人物 Charles Geschke 開發(fā)。這些開發(fā)人員后來一起創(chuàng)立了非常著名的 Adobe Systems 公司。
Python
它是一種支持強(qiáng)制命令,面向?qū)ο蠛秃瘮?shù)式編程樣式的高級編程語言。它與 Perl 在動態(tài)類型系統(tǒng)和自動內(nèi)存管理方面有相似之處。Python 最初于1991年由荷蘭計(jì)算機(jī)程序員 Guido van Rossum 發(fā)布,它是一種基于社區(qū)的開放性語言,其開發(fā)由 Python Software Foundation 來進(jìn)行管理。
REXX
Restructured Extended Executor(重構(gòu)擴(kuò)展執(zhí)行器)的簡稱,它是由 IBM 開發(fā)的解釋型語言。它被設(shè)計(jì)出來的目的是成為一種易于學(xué)習(xí)和閱讀的語言。 NetRexx 是 IBM 提供的基于 REXX 的面向?qū)ο缶幊虒?shí)現(xiàn)。Object REXX 是基于 REXX 的面向?qū)ο竽_本語言。
Ruby
在20世紀(jì)90年代,日本興起了要開發(fā)這樣一種語言的動力。它具有與 Perl 類似的動態(tài)類型系統(tǒng)和自動內(nèi)存管理功能。它支持多種編程樣式,是一種動態(tài)的面向?qū)ο笳Z言。
S-Lang
S-Lang 一開始是作為一種基于堆棧的語言來而開發(fā)出來,而現(xiàn)在已經(jīng)演變?yōu)橐环N類似于 C 的語言。它是由 John E. Davis 開發(fā)出來的。
Spin
Spin 是一種多任務(wù)且面向?qū)ο蟮木幊陶Z言,其編譯器會將代碼轉(zhuǎn)換為字節(jié)碼。多個 Spin 代碼線程可以在同時運(yùn)行,從而實(shí)現(xiàn)多任務(wù)處理。Spin 是由 Parallax 的 Chip Gracey 開發(fā)出來的。
函數(shù)式編程語言
函數(shù)式編程語言 定義每次的計(jì)算作為數(shù)學(xué)求值。他們把焦點(diǎn)集中在函數(shù)的應(yīng)用。大量的函數(shù)編程語言被綁定在數(shù)學(xué)計(jì)算上。
Charity
它是一種純凈的函數(shù)式,非圖靈完備語言,這意味著所有的程序都可以被保證能終止。Charity 是由加拿大的一所公立大學(xué)—— Calgary大學(xué)設(shè)計(jì)的。
Clean
它是一種純凈的函數(shù)式編程語言,擁有跨平臺能力,自動垃圾收集機(jī)制,多數(shù)據(jù)結(jié)構(gòu)和引用透明性,這些能力意味著一個函數(shù),只要給它一個輸入將總是會有一個輸出。
Curry
它是一種函數(shù)邏輯編程語言,實(shí)現(xiàn)了函數(shù)式與邏輯編程,還有約束式編程。在約束式編程方法中,變量之間的關(guān)系是以約束的形式表示的。
Erlang
它是一種并發(fā)編程語言,包含了一系列支持函數(shù)式編程的子集。愛立信將 Erlang 作為一種分布式軟實(shí)時與容錯語言來進(jìn)行開發(fā),并于1998年將其作為一種開放源代碼的計(jì)算機(jī)編程語言發(fā)布,是最常用的函數(shù)式編程語言之一。
F#
它是面向 .NET Framework 的一種編程語言,同時支持函數(shù)式以及命令式的面向?qū)ο缶幊?。微軟研究院?Don Syme 開發(fā)了這種語言,他現(xiàn)在正在 Microsoft 開發(fā)部門進(jìn)行參與開發(fā)工作。它被稱作 F Sharp ,被集成到 .NET Framework 和 Visual Studio 中。
Haskell
Haskell 是以 Haskell Curry ——一個邏輯學(xué)家——來命名的,是一中標(biāo)準(zhǔn)化的純函數(shù)式語言。它支持模式匹配,可定義運(yùn)算符、單個賦值、代數(shù)數(shù)據(jù)類型以及遞歸函數(shù)。
Joy
它是一種基于函數(shù)組合的純函數(shù)式語言。澳大利亞 La Trobe 大學(xué)的 Manfred von Thun 開發(fā)出了這種語言。
Kite
它于2006年推出,帶有一個由面向?qū)ο蠛秃瘮?shù)式編程功能特性混合組成的功能集合。這是一種可快速運(yùn)行的語言。有趣的是,Kite 使用管道字符來進(jìn)行函數(shù)式調(diào)用,而不像使用其他語言那樣使用點(diǎn)或者箭頭字符。
ML
愛丁堡大學(xué)的羅賓·米爾納(Robin Milner)及其同事在七十年代推出了 ML 。因?yàn)樗С置钍骄幊?,所以并非一種純粹的函數(shù)式語言。標(biāo)準(zhǔn) ML 在編譯器編寫者群體中很受歡迎,是一種模塊化的函數(shù)式編程語言。Alice 是標(biāo)準(zhǔn) ML 的方言,支持分布式計(jì)算,多線程和約束式編程。Caml 是 ML 的另一種方言,是一種支持自動內(nèi)存管理的靜態(tài)類型語言。Ocaml 是作為開源項(xiàng)目開發(fā)出來的 Caml 實(shí)現(xiàn)。 JoCaml 是基于連接演算模式的 Ocaml 版本。
Nemerle
它是專為 .NET 平臺設(shè)計(jì)的一種靜態(tài)類型編程語言。 Nemerle 中的程序會被編譯成中間語言字節(jié)碼。它支持函數(shù)式,命令式以及面向?qū)ο缶幊獭?/p>
OPAL
該名稱表示的是 Optimized Applicative Language (優(yōu)化應(yīng)用語言),是由柏林技術(shù)大學(xué)開發(fā)出來的函數(shù)式編程語言。
OPS5
它是一種基于規(guī)則的生產(chǎn)系統(tǒng)計(jì)算機(jī)語言,已經(jīng)成為在專業(yè)系統(tǒng)中使用的首選語言。
Q
之所以被稱為 Q ,因?yàn)樗且环N等式(equational)編程語言。它是由德國美因茨大學(xué) Albert Graf 設(shè)計(jì)出來的一種解釋型函數(shù)式語言。它可以被描述為用于對表達(dá)式進(jìn)行計(jì)算的一組方程式。
編譯型編程語言
編譯型語言是典型的通過編譯器(將源代碼生成機(jī)器碼的翻譯工具)而不是解釋器(一步步執(zhí)行源碼,不會在運(yùn)行前發(fā)生轉(zhuǎn)換)實(shí)現(xiàn)的編程語言。(維基百科)
Ada
它是一種基于 Pascal 的靜態(tài)類型、結(jié)構(gòu)化、命令式的編程語言。Jean Ichbiah 帶領(lǐng)的 CII Honeywell Bull 團(tuán)隊(duì)開發(fā)了 Ada。Ada 編譯器由關(guān)鍵任務(wù)系統(tǒng)驗(yàn)證,它是符合國際標(biāo)準(zhǔn)的計(jì)算機(jī)編程語言。
ALGOL
它的名稱就表明了它是一種算法語言。實(shí)際上它是在20世紀(jì)50年代中期開發(fā)出來的一系列命令式編程語言。它被證明可用于創(chuàng)建像 BCPL、B 和 C 這樣的編程語言。位于 Oslo 的挪威計(jì)算機(jī)中心的 Ole-Johan Dahl 和 Kristen Nygaard 在它的基礎(chǔ)上創(chuàng)造了 Simula。
C
貝爾電腦實(shí)驗(yàn)室的 Dennis Ritchie 開發(fā)了 C 用于 Unix 平臺。它是通用、跨平臺、過程化、命令式的編程語言。它用于實(shí)現(xiàn)系統(tǒng)軟件和應(yīng)用軟件,是當(dāng)今使用最廣泛的計(jì)算機(jī)編程語言之一。C++ 和 C# 都是基于 C 發(fā)展而來。
C++
它由高級語言和低級語言相結(jié)合,因此被認(rèn)為是一個中級編程語言。貝爾實(shí)驗(yàn)室的 Bjarne Stoustrup 開發(fā)了 C++,把它作為 C 語言的擴(kuò)展。它最初被稱為“含有類的C”,直到 1983 年才被稱為 C++。它是一種支持過程化編程、泛型編程、面向?qū)ο缶幊毯蛿?shù)據(jù)抽象的多樣化語言。
[譯者注:multi-paradigm 中的 paradigm 指形式,常見的編程形式包括:命令式(imperative)、函數(shù)式(functional)、申明式(declarative)、面向?qū)ο?object-oriented)、過程化(procedural)、邏輯化(logic)、風(fēng)格化(symbolic)——參考維基百科]
C#
C Sharp 也是一種多樣化語言,支持命令式、泛型和面向?qū)ο缶幊獭K?Microsoft .NET 框架 的一部分。它的面向?qū)ο笳Z法與 C++ 相似。它還受到 Java 和 Delphi 的影響。
CLEO
它被稱為 Clear Language for Expressing Orders (清楚表達(dá)命令的語言),是用于 LEO 計(jì)算機(jī)的計(jì)算機(jī)語言。
COBOL
其名稱代表了 Common Business-Oriented Language (面向商業(yè)的通用語言),被設(shè)計(jì)用于商業(yè)和金融領(lǐng)域。COLBOL 2002 標(biāo)準(zhǔn)支持面向?qū)ο缶幊獭K且粋€非常古老的編程語言,但仍然在使用。
Cobra
它是一個運(yùn)行于 .NET 框架和 Mono 框架的面向?qū)ο缶幊陶Z言,由 Chunk Esterbrook 開發(fā)。它的設(shè)計(jì)受 Python 和 C# 的影響。它支持靜態(tài)和動態(tài)類型,適用于單元測試?,F(xiàn)在它是一個開源項(xiàng)目。
D
它最初被設(shè)計(jì)為 C++ 的增強(qiáng),受 Java、Eiffel 和 C# 的影響。它是面向?qū)ο?、命令式、多樣化的系統(tǒng)編程語言,由 Digital Mars 的 Walter Bright 開發(fā)。
DASL
它是 Distributed Application Specification Language (分布式應(yīng)用程序描述語言) 的縮寫,是由 Sun 公司開發(fā)的一款高級、強(qiáng)類型的編程語言。創(chuàng)建它是為了用來開發(fā) Web 應(yīng)用。
DIBOL
DIBOL 是 Digital Interactive Business Oriented Language(面向商業(yè)的數(shù)字互動語言)的簡寫,它是通用過程命令式的編程語言。它和 COBOL 很像,適用于管理信息系統(tǒng)的開發(fā)。
Fortran
這是過程化、命令式的通用計(jì)算機(jī)編程語言,適用于科學(xué)計(jì)算和數(shù)值運(yùn)算。自 IBM 于 20 世紀(jì) 50 年代開發(fā)出來,它迅速走紅。它是結(jié)構(gòu)化的編譯型編程語言,在高性能計(jì)算領(lǐng)域非常流行。它是 Fortran95 的子集。Fortran 的修訂版本,F(xiàn)ortran 2003 支持面向?qū)ο缶幊獭?/p>
Java
它是通用計(jì)算機(jī)編程語言,并發(fā),基于類,面向?qū)ο蟛iT針對盡可能少的依賴來進(jìn)行設(shè)計(jì)。編譯后的 Java 代碼可以不需要再次編譯就運(yùn)行于各種支持 Java 的平臺。是現(xiàn)代非常流行的語言。
JOVIAL
它是類似 ALGOL 的高階計(jì)算機(jī)編程語言。它適用于嵌入式系統(tǒng)的設(shè)計(jì)和開發(fā)。
Objective-C
它是一種反射式面向?qū)ο蟪绦蚓幊陶Z言,在 C 的基礎(chǔ)上添加了消息服務(wù)。
SMALL
它的名稱表示 Small Machine Algol-like Language (類似 Glgol 的小型機(jī)器語言)。它的代碼與 ALGOL 類似,用于在小型機(jī)上編程。
Smalltalk
它是反射式的面向?qū)ο缶幊陶Z言,支持動態(tài)類型。 Alan Kay、Adele Goldberg、Dan Ingalls、Scott Wallace、Ted Kaehler 和他們在 Xerox PARC 的同事開發(fā)了 Smalltalk。他們?yōu)榻逃猛驹O(shè)計(jì)了 Smalltalk,之后它就流行起來了。VisualWorks 是 Samlltalk 的優(yōu)秀實(shí)現(xiàn)。Squeak 是 Smalltalk 的一種實(shí)現(xiàn)形式。Scratch 是基于 Squeak 的可視化編程語言。
Turing
它于 1982 年由加拿大多倫多大學(xué)的 Ric Holt 和 James Cordy 開發(fā)出來。它的名字是為了紀(jì)念英國計(jì)算機(jī)科學(xué)家 Alan Turing(艾蘭·圖靈)。它很像 Pascal,從 2007 年開始免費(fèi)。
Visual Basic
這是一個事件驅(qū)動的編程語言,通過集成開發(fā)環(huán)境打包。它從 BASIC 繼承了很多特性。它的圖形化開發(fā)特性使初學(xué)者學(xué)習(xí)起來非常容易。
Visual FoxPro
它是面向?qū)ο蠛瓦^程化編程語言,來源于 FoxPro。它自身集成了關(guān)系型數(shù)據(jù)庫系統(tǒng),不再需要額外的編程環(huán)境。它支持動態(tài)編程。
XL
它的誕生是為了支持概念編程,這是一種致力于將程序員腦中的概念轉(zhuǎn)化為代碼的編程形式。程序可以重新配置 XL 的語法和語義。
過程式編程語言
過程式(命令式)編程 意味著需指定程序應(yīng)該達(dá)到預(yù)期狀態(tài)的步驟。過程是可以通過過程調(diào)用引用的一組語句。 過程有助于代碼中庸。 過程式編程使程序結(jié)構(gòu)化,易于追蹤程序流程。
Bliss
它是一種系統(tǒng)編程語言,是在 C 語言出現(xiàn)之前最知名的語言之一??▋?nèi)基梅隆大學(xué)的 W.A.Wolf、D.B. Russell 和 A.N. Habermann 發(fā)明了 Bliss 。它包括異常處理機(jī)制、協(xié)程和宏,但并不包括 goto 語句。
ChucK
它是可以在 Mac OS X、Linux 以及 Microsoft Windows 上運(yùn)行的并發(fā)和強(qiáng)音頻定時的編程語言。 它特別以其為程序員提供在運(yùn)行程序中做一些修改的能力而著稱。
CLIST
它是一種使用命令集合的形式表示的過程式編程語言,這些命令集合需要像批處理文件一樣順序執(zhí)行。
HyperTalk
它是一種高級編程語言,旨在給程序員的初學(xué)者使用。 這種計(jì)算機(jī)語言的程序員被稱為作者,編寫程序的行為被稱為腳本。HyperTalk 由 Dan Winker 于 1987 年設(shè)計(jì),結(jié)構(gòu)上類似于 Pascal 。
Modula-2
它是1978年由 Niklaus Wirth 在 ETH 創(chuàng)立的通用過程式語言。它與 Pascal 類似,具有系統(tǒng)編程和多重編程功能。
Oberon
Niklaus Wirth、Pascal和 Modula 背后的人,在 1986 年提出了 Oberon ,它被設(shè)計(jì)為 Oberon 操作系統(tǒng)的一部分。它類似于 Modula-2 ,但比它小得多。
Component Pascal
這是一種看上去似乎與 Pascal 相關(guān)的編程語言,但實(shí)際上與它不兼容。它實(shí)際上是 Oberon-2 的一個變種。Lagoona 是一種實(shí)驗(yàn)性編程語言,支持面向組件的編程、將系統(tǒng)分解為邏輯或功能組件的范式。 Niklaus Wirth 的學(xué)生 Michael Franz 發(fā)明了 Lagoona 。 Seneca,以 Oberon-2 著稱,是 Oberon 編程語言的擴(kuò)展。
MATLAB
它是一種數(shù)值計(jì)算環(huán)境和一種能夠進(jìn)行矩陣計(jì)算、功能繪圖和算法實(shí)現(xiàn)的編程語言。 它也可以用于創(chuàng)建用戶界面。 MathWorks 創(chuàng)建了 MATLAB 。
Occam
這是由 David May 和他的同事們在 INMOS 發(fā)明的一項(xiàng)命令式程序性語言。 它類似于 Pascal 。Occam-pi 是 Occam 的一種變體,已經(jīng)擴(kuò)展到包括嵌套協(xié)議、遞歸、協(xié)議繼承、數(shù)組構(gòu)造函數(shù)和運(yùn)行時進(jìn)程創(chuàng)建。
PL/C
它被發(fā)明之后用于教授編程知識。它是在20世紀(jì)70年代在康奈爾大學(xué)創(chuàng)建的。
PL/I
它是針對科研和工程應(yīng)用的必需的計(jì)算機(jī)編程語言。主要用于執(zhí)行數(shù)據(jù)處理,它還支持結(jié)構(gòu)化編程和遞歸。
Rapira
它是一種在蘇聯(lián)學(xué)校教授計(jì)算機(jī)程序設(shè)計(jì)的過程式編程語言。蘇聯(lián)開發(fā)的這種語言最初是基于俄語的關(guān)鍵詞。隨后才加入的英文關(guān)鍵詞。
RPG
此編程語言用于業(yè)務(wù)應(yīng)用程序中。它可以與 IBM 的 System I 中間件計(jì)算機(jī)一起使用。
腳本語言
腳本語言是用來控制應(yīng)用程序的編程語言。腳本可以獨(dú)立于其它任何應(yīng)用程序執(zhí)行。它們多數(shù)時候嵌入在應(yīng)用程序中,用于控制或用于執(zhí)行頻繁執(zhí)行的自動任務(wù),比如與外部程序通信的任務(wù)。
AppleScript
它是 Mac OS 內(nèi)建的腳本語言。
Awk
Awk 于上世紀(jì)70年代誕生于貝爾實(shí)驗(yàn)室。它使用字符串?dāng)?shù)據(jù)類型、數(shù)組和正則表達(dá)式來處理數(shù)據(jù)流和文件中基于文本的數(shù)據(jù)。
BeanShell
它是 Java 腳本語言,其語法與 Java 相似,是在 Java 運(yùn)行環(huán)境中運(yùn)行的腳本命令和語法。
ColdFusion
它是應(yīng)用服務(wù)器和軟件開發(fā)框架,帶有一個被稱為 ColdFusion Markup Language (ColdFusion 標(biāo)記語言) 的腳本語言。它被稱為 CFML,其語法與 HTML 類似。
F-Script
它是一種面向?qū)ο蟮哪_本語言,與 Smalltalk 非常接近,但增加了數(shù)組編程的特性。
JASS
它是一個事件驅(qū)動的腳本語言,為程序提供了廣泛的 API。
Maya Embedded Language
它是 Maya 軟件中處理任務(wù)的腳本語言,縮寫為 MEL。它的語法類似 Perl。
Mondrian
這個腳本語言為 Internet 應(yīng)用而生,它可以看作是 Haskell 和 Java 的結(jié)合。
PHP
PHP 是一種普遍使用的腳本語言。它用于創(chuàng)建動態(tài)網(wǎng)頁,同時也支持命令行接口。
Revolution
它是基于 HyperTalk 的快速應(yīng)用程序開發(fā)語言。它跨平臺,支持動態(tài)類型。
Tcl
它被認(rèn)為是一種容易學(xué)習(xí)的腳本語言。它用于嵌入式系統(tǒng)的快速原型開發(fā)。
VBScript
它是微軟開發(fā)的 Visual Basic 的變體,非?;钴S。VBScript 在微軟 Windows 桌面系統(tǒng)中都作為默認(rèn)組件存在。
Windows PowerShell
它是微軟的命令行 shell 和腳本語言。它于 2006 年發(fā)布,可用于 Windows XP、Windows Vista 以及 Windows Server 2003 和 Windows Server 2008[譯者注:還有更新一些的 Windows 版本]。它與 Microsoft .NET 框架合作,包括可執(zhí)行程序、獨(dú)立應(yīng)用中的窗體、常規(guī)的 .NET 類等。Cmdlet 是特定的 .NET 類和腳本,或者由一些 Cmdlet 通過必要邏輯組合起來。
標(biāo)記編程語言
標(biāo)記編程語言 (Markup Languages) 是一種人造語言,它使用文本注釋來定義這些文本的顯示方式。
Curl
它是一種反射式的面向?qū)ο蟮木幊陶Z言。它是一種類似于 HTML 的標(biāo)記語言。Curl 是支持多重繼承的面向?qū)ο缶幊陶Z言。
SGML
標(biāo)準(zhǔn)化通用標(biāo)記語言(SGML)是來自 IBM 的通用標(biāo)記語言。它是可以為文檔定義標(biāo)記語言的 ISO 標(biāo)準(zhǔn)元語言。它的目的是共享必須長期保留下來的大型項(xiàng)目機(jī)讀文件。
HTML
超文本標(biāo)記語言(縮寫為 HTML )是用于網(wǎng)頁的最著名的標(biāo)記語言。它是用 HTML 標(biāo)簽的形式寫成的,它們被尖括號所包圍。HTML 標(biāo)簽描述了文檔中的文本外觀,并且可以嵌入到某些其他代碼中以影響 Web 瀏覽器的行為。HTML 使用 SGML 的默認(rèn)語法。
XML
這個名字代表可擴(kuò)展標(biāo)記語言(Extensible Markup Language)。它是可擴(kuò)展的,因?yàn)樗试S用戶自定義 XML 元素。它支持通過互聯(lián)網(wǎng)共享結(jié)構(gòu)化數(shù)據(jù)以及數(shù)據(jù)的編碼和序列化。它起源于 SGML 的一個子集。 XPath 是用于從 XML 文檔中選擇節(jié)點(diǎn)的 XML 路徑語言。它支持值計(jì)算。XQuery 用于查詢 XML 數(shù)據(jù)的集合??蓴U(kuò)展樣式表語言轉(zhuǎn)換(XSLT)是一種基于 XML 的語言,用于將 XML 文檔轉(zhuǎn)換為人類可讀的格式。Apache Ant 是軟件構(gòu)建過程中的自動化工具。 它使用 XML 來描述構(gòu)建過程。
XHTML
它是一種與 HTML 類似的標(biāo)記語言,遵循 XML 語法。它是 HTML 和 XML 之間的過渡。 XHTML 文檔允許自動處理數(shù)據(jù)。
基于邏輯的編程語言
邏輯編程是一種基于形式邏輯的編程范例。用邏輯編程語言編寫的程序都是邏輯形式的一組句子,表達(dá)關(guān)于某些問題域的事實(shí)和規(guī)則。(維基百科)
ALF
代數(shù)邏輯函數(shù)式(Algebraic Logic Functional )編程語言是一種多范式的編程語言,它是功能編程和邏輯編程的組合。 ALF 程序語句會被編譯成一種抽象機(jī)指令。用 C 編寫的仿真器可以執(zhí)行抽象機(jī)的程序。
Fril
Fril 語言是由 Trevor Martin 和 Jim Baldwin 于20世紀(jì)80年代在布里斯托大學(xué)的時候設(shè)計(jì)的。它主要面向一階謂詞演算,支持模糊集和元編程,基于 Prolog 的語法。
Janus
Janus 支持并發(fā)和約束式編程。
Leda
這種計(jì)算機(jī)編程語言是基于邏輯的,函數(shù)式,命令式和面向?qū)ο缶幊痰幕旌象w。因此,它是一種多范式語言。
Oz
它是一種多范式語言,支持函數(shù)式,基于邏輯的,命令式和面向?qū)ο缶幊獭?Oz 還支持并發(fā)和分布式編程。支持約束式編程是 Oz 語言的優(yōu)點(diǎn)之一。
Poplog
它是一個強(qiáng)大的多范式軟件開發(fā)環(huán)境,其核心語言是 POP-11 。該開發(fā)環(huán)境的所有語言共享一個共同的語言編輯器,并且是增量編譯的編程語言。
Prolog
它是一種支持邏輯編程的通用編程語言,通??梢赃B系到人工智能和計(jì)算語言學(xué)。語言是聲明式的,程序邏輯則以關(guān)系的形式來表達(dá)。 Mercury 是基于 Prolog 的函數(shù)式邏輯編程語言。Strawberry Prolog 是 Prolog 的一種方言,被設(shè)計(jì)得易于使用。 Visual Prolog 是支持面向?qū)ο缶幊痰?Prolog 強(qiáng)類型擴(kuò)展。它是一種基于邏輯的編譯型編程語言。
ROOP
它是一種基于 C++ 的多范式語言,推出目的是在與人工智能系統(tǒng)一起使用。其功能融合了函數(shù)式、邏輯和面向?qū)ο缶幊獭?/p>
并發(fā)編程語言
并發(fā)編程 是一種計(jì)算機(jī)編程技術(shù),可以讓操作并行執(zhí)行——在單計(jì)算機(jī)或者跨越多臺計(jì)算機(jī)上都可以實(shí)現(xiàn),而在后一種情況下,使用術(shù)語分布式計(jì)算。(維基百科)
ABCL
它是基于 Actor 的并行語言(Actor-Based Concurrent Language)的一個語言系列,是在日本于1980年代和90年代開發(fā)出來的。ABCL/1、ABCL/R 以及 ABCL/R2 就是 ABCL 系列的一些成員。
Afnix
它是一種多線程函數(shù)式編程語言。它的解釋器是用 C++ 編寫的。 其運(yùn)行時引擎支持32位和64位平臺。
Cilk
Cilk 是麻省理工學(xué)院實(shí)驗(yàn)室在1994年創(chuàng)建出來的,支持多線程并行編程。
Concurrent Pascal
美國丹麥裔計(jì)算機(jī)科學(xué)家 Per Brinch Hansen 創(chuàng)建了 Concurrent Pascal,用來編寫操作系統(tǒng)和為實(shí)時系統(tǒng)編程。
E
它是一種支持分布式編程的面向?qū)ο缶幊陶Z言。E 是在1997年由馬克·米勒,丹·博恩斯坦與他們在電氣社區(qū)的同事們一起開發(fā)出來的,其語法類似于 Java 。
Joule
Joule 出現(xiàn)在 E 編程語言之前,是一種并發(fā)數(shù)據(jù)流編程語言,可用于開發(fā)分布式應(yīng)用程序。
Limbo
在貝爾實(shí)驗(yàn)室開發(fā)出來的 Limbo 可用于為分布式系統(tǒng)編寫程序。它的顯著特點(diǎn)就是其編譯器能夠生成獨(dú)立于體系結(jié)構(gòu)的目標(biāo)代碼。 Limbo 被用來開發(fā)在 Inferno 操作系統(tǒng)上運(yùn)行的應(yīng)用程序。最初作為 Plan 9 操作系統(tǒng)一部分的 Alex 就是 Limbo 的前身。
Pict
它是一種靜態(tài)類型的編程語言,現(xiàn)在還處在實(shí)驗(yàn)階段。
SALSA
Simple Actor Language System and Architecture(簡單Actor語言系統(tǒng)和架構(gòu))的簡稱,SALSA 支持并行編程,消息傳遞和分布式計(jì)算。為了具備可移植性,它使用了 Java 代碼。
SR
其名稱 SR 是 Synchronizing Resources(同步資源)的首字母縮略詞,是一種并行編程語言。
面向?qū)ο缶幊陶Z言
面向?qū)ο缶幊?( OOP) 是基于“對象”思想的編程規(guī)范,它包含數(shù)據(jù),一般稱為屬性,表現(xiàn)為字段(field)的形式;還包含代碼,一般稱為方法,表現(xiàn)為程序的形式。在 OOP 中,計(jì)算機(jī)程序是根據(jù)對象與對象之間的交互來設(shè)計(jì)的。(Wikipedia)
Agora
這是一種基于原型的面向?qū)ο缶幊陶Z言,具有消息傳遞機(jī)制。
BETA
它是一種面向?qū)ο蟮木幊陶Z言,其類和過程圍繞相同的概念,而且類被定義為對象的屬性。它具有很強(qiáng)的抽象機(jī)制。BETA 還支持嵌套類。
Cecil
這是由 Craig Chambers 在華盛頓大學(xué)創(chuàng)建的一種面向?qū)ο缶幊陶Z言。它與 Objective-C 和 Modula-3 非常相似。
Lava
Lava 是一種解釋性的可視化面向?qū)ο缶幊陶Z言。
Lisaac
這是基于原型概念的首款編譯性面向?qū)ο缶幊陶Z言。它還支持系統(tǒng)編程。
MOO
這是一種基于動態(tài)類型原型的編程語言,支持面向?qū)ο缶幊?。它支持異常處理機(jī)制和循環(huán)結(jié)構(gòu)。
Moto
這是開源的服務(wù)器端編程語言,擁有狀態(tài)和會話管理對象以及數(shù)據(jù)庫連接。
Object-Z
這個語言由澳大利亞的 Queensland 大學(xué)開發(fā)。它擴(kuò)展了 Z 編程語言,為其添加了面向?qū)ο蟮奶匦浴?/p>
Obliq
這是一種提供面向?qū)ο缶幊烫匦缘慕忉屝杂?jì)算機(jī)編程語言。它支持無類型變量,被設(shè)計(jì)用于分布式和多線程計(jì)算機(jī)。
Oxygene
Oxygene 是一種基于 Object Pascal 的面向?qū)ο缶幊陶Z言,擁有豐富的功能集。它以前被稱為 ‘Chrome’。
Pliant
它基于動態(tài)編譯器,具有獨(dú)特的能力來支持低級指令列表,同時也支持高級表達(dá)式。
Prograph
它是可視化的面向?qū)ο笳Z言,支持多種樣式,使用符號來表示數(shù)據(jù)上的操作。
REBOL
REBOL 由 Relative Expression Based Object Language (基于對象的相關(guān)表達(dá)式語言) 的首字母組成。它被設(shè)計(jì)用于分布式平臺和網(wǎng)絡(luò)通信。
Scala
Scala 名稱表示它是可擴(kuò)展(Scalable)的語言。它是一種多范型編程語言,提供了面向?qū)ο蠹昂瘮?shù)式編程能力。
Self
這是基于原型的面向?qū)ο缶幊陶Z言。NewtonScript 在很大程序上受 Self 影響,它用于為 Apple Newton 編寫程序。
Slate
這個面向?qū)ο缶幊陶Z言也是基于原型概念的。它有一些特性來自 Smalltalk 和 Self 語言。Slate 設(shè)計(jì)出來的目的是為程序員提供一個像操作系統(tǒng)的樣的環(huán)境。
XOTcl
它是從 Tool Command Language [譯者注:可能叫 Tcl 更容易認(rèn)出來] 擴(kuò)展而來,支持元類、動態(tài)類和方法。
IO
這是純面向?qū)ο缶幊陶Z言,擁有基于原型對象的模型。它體積不大,可以在小型便攜式虛擬機(jī)上運(yùn)行。
轉(zhuǎn)載自阿里云合作媒體51CTO
1.《關(guān)于brinch我想說科普丨史上最全編程語言列表 你知道幾個?》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《關(guān)于brinch我想說科普丨史上最全編程語言列表 你知道幾個?》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進(jìn)行證實(shí),對其原創(chuàng)性、真實(shí)性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/tiyu/2117826.html