我们正在努力恢复Google Play商店上的Unionpedia应用程序
传出传入
🌟我们简化了设计以优化导航!
Instagram Facebook X LinkedIn

直譯語言

指数 直譯語言

解释型语言(Interpreted language),是一種编程语言。這種類型的程式語言,會將程式碼一句一句直接執行,不需要像編譯語言(Compiled language)一樣,經過編譯器先行編譯為機器碼,之後再執行。這種程式語言需要利用直譯器,在執行期,動態將程式碼逐句直譯(interpret)為機器碼,或是已經預先編譯為機器碼的的子程式,之後再執行。 理論上,任何程式語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程式的應用有關。許多程式語言同時採用編譯器與直譯器來實作,其中包括Lisp,Pascal,C,BASIC 與 Python。JAVA及C#採用混合方式,先將程式碼編譯為bytecode,在執行時再進行直譯。.

目录

  1. 18 关系: 塔斯基不可定義定理BASICCommon Lisp編譯語言直譯器直译编程语言Emacs LispErlang语法错误GNU OctaveJavaJavaScriptLogo语言PerlPythonShell脚本Sugar (用戶界面)極簡化

塔斯基不可定義定理

塔斯基不可定義定理(Tarski's undefinability theorem),是由阿爾弗雷德·塔斯基(Alfred Tarski)在1936年給出並證明,是在數理邏輯、數學基礎及形式化語義方面的一個重要的限制結果。簡單來說:我們無法在算術系統中定義何謂「算術的真理」。從而這個定理可被推廣成適用於任何足夠強的形式系統,以表明:我們無法在系統中定義何謂「系統標準模型的真理」。.

查看 直譯語言和塔斯基不可定義定理

BASIC

BASIC(來自Beginner's All-purpose Symbolic Instruction Code的縮寫),又譯培基,一種直譯式程序设计语言。名稱字面為意思“初學者的全方位符式指令代碼”,設計給初學者使用的程式語言,在完成編寫後不須經由编译及連結等手續,經過直譯器即可執行,但如果需要單獨執行時仍然需要將其建立成執行檔。.

查看 直譯語言和BASIC

Common Lisp

Common Lisp,縮寫為CL(不是組合邏輯的縮寫)是Lisp編程語言的一種方言,由ANSI INCITS 226-1994(R2004)(前身為ANSI X3.226-1994(R1999)),所定義的語言規範標準。Common Lisp HyperSpec是源自於ANSI Common Lisp標準的網頁超連結版本。 CL語言是為標準化和改良Maclisp而開發的後繼者。到20世紀80年代初,幾個工作群組已經在設計MacLisp各種後繼者,例如:Lisp Machine Lisp(又名 ZetaLisp),Spice Lisp,NIL和S-1 Lisp。CL是為了標準化和擴展此前眾多的MacLisp分支而開發,它本身並非具體的實作,而是對語言設立標準的規範。有數個實作符合Common Lisp規範,其中包括自由和開源軟件,以及商業化產品。CL支援了結構化、函數式和物件導向編程等範式。相对于各种嵌入在特定产品中的语言,如Emacs Lisp和AutoLISP,Common Lisp是一種用途廣泛的编程语言。不同於很多早期Lisp,Common Lisp如同Scheme,其中的變量是預設為詞法作用域的。 身為一種動態編程語言,它有助於進化和增量的軟件開發,並將其迭代編譯成高效的執行程序。這種增量開發通常是互動持續地改善,而不需中斷執行中的應用程序。它還支援在後期的分析和優化階段添加可選的型別註記與轉型,使編譯器產生更有效率的代碼。例如在硬體和實作的支援範圍內,fixnum能保存一個未封裝整數,允許比大整數或任意精度類型更高效率的運算。同樣地,在每個模組或函數的基礎上可聲明優化,指示編譯器要編譯成哪一類型的安全級別。 CL包含了支援多分派和方法組合的物件系統,縮寫為CLOS,它通常以元物件(Metaobject)協定來實現。 CL藉由標準功能進行擴展,例如Lisp宏(编译时期程序自身完成的代码重排(compile-time code rearrangement accomplished by the program itself))和阅读器宏(赋予用户自定义的語法以扩展具特殊意义的符号(extension of syntax to give special meaning to characters reserved for users for this purpose))。 CL為Maclisp和约翰·麦卡锡的原創Lisp提供了一些向後兼容性。這允許較舊的Lisp軟件移植到Common Lisp之上。.

查看 直譯語言和Common Lisp

編譯語言

編譯語言(Compiled language)是一種以編譯器來實作的程式語言。它不像直譯語言一樣,由直譯器將程式碼一句一句執行,而是以編譯器,先將程式碼編譯為機器碼,再加以執行。理論上,任何程式語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程式的應用有關。.

查看 直譯語言和編譯語言

直譯器

譯器(interpreter),是一種電腦程式,能夠把高階程式語言一行一行直接轉譯執行。直譯器像是一位「中間人」,每次執行程式時都要先轉成另一種語言再作執行,因此直譯器的程式運行速度比較緩慢。它不會一次把整個程式轉譯出來,而是每轉譯一行程式敘述就立刻執行,然後再轉譯下一行,再執行,如此不停地進行下去。 直譯器的好處是它消除了編譯整個程式的負擔,程式可以拆分成多個部分來模組化,但這會讓執行時的效率打了折扣。相對地,編譯器已一次將所有原程式碼翻譯成另一種語言,如機械碼,執行時便無需再依賴編譯器或額外的程式,故而其運行速度比較快。.

查看 直譯語言和直譯器

直译编程语言

#重定向 直譯語言.

查看 直譯語言和直译编程语言

Emacs Lisp

Emacs Lisp,一種直譯式的腳本語言,為LISP的方言之一,GNU Emacs與XEmacs文字編輯器都使用這個程式語言來扩展他們的功能。它的直譯器是以C語言來實作的。它受到Maclisp的影響很大,但是跟Common Lisp與Scheme有所不同。.

查看 直譯語言和Emacs Lisp

Erlang

Erlang()是一種通用的----,它由喬·阿姆斯特朗(Joe Armstrong)在瑞典電信設備製造商愛立信所轄的電腦科學研究室開發,目的是創造一種可以應付大規模開發活動的--和執行環境。Erlang於1987年釋出正式版本,最早是愛立信擁有的私有軟體,經過十年的發展,於1998年發表開放源碼版本。 Erlang是運作於虛擬機的--,但是現在也包含有烏普薩拉大學高性能Erlang計劃(HiPE)開發的原生程式碼編譯器,自R11B-4版本開始,Erlang也支持--。在編程範型上,Erlang屬於多重典範程式語言,涵蓋函數式、--及--。循序執行的Erlang是一个及早求值, 單次賦值和--的函數式程式語言。.

查看 直譯語言和Erlang

语法错误

在計算機科學中,语法错误是指程式的有誤,編譯器或解譯器在詞法分析時無法將其轉換為適當的程式語言。 在編譯語言中,语法错误一定只在編譯期時出現,編譯器要所有的語法都正確,才能正確編譯。不過直譯語言中的语法错误可能要到執行期才會出現,而且不一定容易區分语法错误及語意錯誤。 早期8位元家用電腦的使用者介面是BASIC直譯器,SYNTAX ERROR常造成使用者的困擾,只要直譯器無法識別用戶的輸入,就會出現此一訊息。 若计算器中輸出不正確的算式,也會出現语法错误,例如算式中有左括號但沒有右括號、或是一個數字中有多個小數點等。 在Java語言中,以下的程式是正確的: 以下的程式不正確: 第二個程式理論上要顯示的是叫作Hello World的變數,而不是Hello World這個字,且Java語言的變數名稱中不可有空白,因此會出現語法錯誤。 編譯器會標示程式中有语法错误的行,可能也會有簡單的說明。.

查看 直譯語言和语法错误

GNU Octave

Octave是一個旨在提供與Matlab語法相容的開放源碼科學計算及數值分析的工具;它同時也是GNU計畫成員之一。.

查看 直譯語言和GNU Octave

Java

Java是一種廣泛使用的電腦程式設計語言,擁有跨平台、物件導向、泛型程式設計的特性,广泛应用于企业级Web应用开发和移动应用开发。 任職於昇陽電腦的詹姆斯·高斯林等人于1990年代初开发Java語言的雛形,最初被命名为Oak,目標設定在家用电器等小型系統的程式语言,應用在电视机、电话、闹钟、烤面包机等家用电器的控制和通訊。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代網際網路的发展,Sun公司看見Oak在網際網路上应用的前景,于是改造了Oak,於1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的-zh-hans:指针; zh-hant:指標;-,改以-zh-hans:引用; zh-hant:參照;-取代,同時移除了C++中的--和多重继承特性,改用接口取代,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。昇陽電腦对Java语言的解释是:「Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言」 Java不同於一般的编译語言或直譯語言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。在早期JVM中,这在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的執行速度有了大幅提升。 与传统型態不同,Sun公司在推出Java時就将其作为开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,微软公司後來推出了与之竞争的.NET平台以及模仿Java的C#语言。後來Sun公司被甲骨文公司併購,Java也隨之成為甲骨文公司的產品。 現時,行動作業系統Android大部分的代碼採用Java 程式設計語言編程。.

查看 直譯語言和Java

JavaScript

JavaScript,一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的直譯語言。它已经由ECMA(欧洲电脑制造商协会)通过ECMAScript实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、Firefox、Safari、Opera)支持。JavaScript是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持I/O,比如网络、存储和图形等,但这些都可以由它的宿主环境提供支持。 虽然JavaScript与Java这门语言不管是在名字上,或是在语法上都有很多相似性,但这两门编程语言从设计之初就有很大的不同,JavaScript的语言设计主要受到了Self(一种基于原型的编程语言)和Scheme(一门函数式编程语言)的影响。在语法结构上它又与C语言有很多相似(例如if条件语句、while循环、switch语句、do-while循环等)。 在客户端,JavaScript在传统意义上被实现为一种解释语言,但在最近,它已经可以被即时编译(JIT)执行。随着最新的HTML5和CSS3语言标准的推行它还可用于游戏、桌面和移动应用程序的开发和在服务器端网络环境运行,如Node.js。.

查看 直譯語言和JavaScript

Logo语言

Logo是一种计算机程式设计语言,在1966年由西摩爾·派普特和Wally Feurzeig设计,设计Logo的初衷是为了向儿童教授计算机编程技能。Logo一词源自希腊语邏各斯(logos)。 Logo的原型来自另一个计算机语言LISP,派普特修改了LISP的语法使其更易于阅读。Logo常被称作没有括号的Lisp。 Logo是一种直譯語言,和其他语言不同的是,它内置一套海龟绘图(Turtle Graphics)系统,通过向海龟发送命令,用户可以直观地学习程序的运行过程,因此很适于儿童学习。它亦適合用作數學教學。 Logo继承了Lisp的「表」的概念,所以在函数处理等方面拥有强大的能力,因此Logo不仅是初学者学习程序设计的良药,更是有特殊需求的计算机科学家的好帮手。.

查看 直譯語言和Logo语言

Perl

Perl是高階、通用、直譯式、動態的程式语言家族。最初设计者拉里·沃尔為了讓在UNIX上進行報表處理的工作變得更方便,決定開發一個通用的腳本語言,而在1987年12月18日發表。目前,Perl语言家族包含两个分支Perl 5以及Perl 6(开发中)。 Perl借用了C、sed、awk、shell脚本以及很多其他程式語言的特性。其中最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。 2000年开始,目前拉里·沃尔开始開發Perl 6,來作為Perl的後繼;不過,Perl 6語言的語法有很多轉變,所以Perl 6被視為Perl家族中的另一個語言。 Perl语言的应用范围很广,除CGI以外,Perl被用于图形编程、系统管理、网络编程、金融、生物以及其他领域。由于其灵活性,Perl被称为脚本语言中的瑞士军刀。.

查看 直譯語言和Perl

Python

Python( ),是一种广泛使用的高级编程语言,属于通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以視之為一種改良(加入一些其他程式語言的優點,如物件導向)的LISP。作为一种解释型语言,Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比於C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。 与Scheme、Ruby、Perl、Tcl等动态类型编程语言一样,Python拥有动态类型系统和垃圾回收功能,能够自动管理内存使用,并且支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。其本身拥有一个巨大而广泛的标准库。 Python 解释器本身几乎可以在所有的操作系统中运行。Python的正式直譯器CPython是用C语言编写的、是一個由社群驱动的自由软件,目前由Python软件基金会管理。.

查看 直譯語言和Python

Shell脚本

Shell脚本(Shell script),又稱Shell命令稿、程式化腳本,是一種電腦程式與文字檔案,內容由一連串的shell命令組成,經由Unix Shell直譯其內容後運作。被當成是一種腳本語言來設計,其運作方式與直譯語言相當,由Unix shell扮演命令行直譯器的角色,在讀取shell脚本之後,依序執行其中的shell命令,之後輸出結果。利用shell脚本可以進行系統管理,檔案操作等。 在Unix及所有的類Unix系統中,如Linux、FreeBSD等作業系統,都存在shell脚本。依照Unix shell的各種不同類型,shell脚本也有各種不同方言。在DOS、OS/2、Microsoft Windows中的批次檔,跟shell脚本有類似的功能。.

查看 直譯語言和Shell脚本

Sugar (用戶界面)

Sugar是為OLPC的兒童電腦計劃而開發的圖形用戶界面。與許多傳統桌面環境不同,Sugar並不使用「桌面」的概念以及只能同時集中於一項工作。Sugar以直譯式語言Python編寫(大部份其他環境以如C++等編譯式語言編寫,作為對比)。該計劃的主要參與者包括了Christopher Blizzard與Diana Fong。.

查看 直譯語言和Sugar (用戶界面)

極簡化

極簡化(另称縮小化),在程式語言 (尤其是 JavaScript) 的範疇裡,指的是在不影響功能的情況下,移除所有非功能性必要之原始碼字元(如:空白、換行、註解、以及些許的區塊辦識子),因為雖然它們有助於提昇原始碼的易讀性,但在實際運行時卻不是必要的部份。 極簡化後的原始碼特別對於在網路上傳送的直譯式語言(例: Javascript)有所助益,因為經過極簡化之後,需要傳輸的資料減少了,大幅減少了傳輸所需的時間以及頻寬;極簡化後的原始碼也可以被當作一種代碼混淆的結果,使人不易閱讀或使用,但只需依靠原始碼美化器便可以把結構整理出來;極簡化和常見的数据压缩也有所不同,因為極簡化的原始碼並不需要經過解壓縮的過程便可以閱讀或執行。 另外,極簡化同時也是一種程式設計師文化:例如在 Perl 的圈子裡,Perl Golf 活動的目標正是追求盡可能的極簡化。.

查看 直譯語言和極簡化

亦称为 直譯式語言。