1. 程式人生 > >無極榮耀主管51076

無極榮耀主管51076

並且 可執行 廣泛 情況 語言 chrome 傳統 註意 sca

無極榮耀主管51076
現代硬件和現代編譯技術下,編譯已經變得越來越快導致腳本語言和傳統的編程語言之間的界限不在那麽明顯.例如,V8作為Google Chrome瀏覽器的引擎,並且在瀏覽器之外使用了很多,實際上將JavaScript代碼編譯成機器代碼,而不是去解釋他們.(V8事實上是一個優化了的兩個階段的編譯器)

需要註意的是,一個語言是不是"腳本"我們不應該只是從語言角度去看待,應該要存運行所在的環境去區別.你完全可以寫一個C語言的解釋器,並且將它作為腳本語言來運行.同樣也可以將JavaScript編譯成機器代碼並且存放在可執行文件中.Ruby就是一個很好的例子,它以一個解釋器(腳本語言)出現,但現在已經有多個編譯器可以編譯它了.

一些"腳本"語言例子(傳統的角度)

Lua
JavaScript
VBScript and VBA
Perl
一些傳統中需要使用顯示的編譯:

C
C++
D
Java(需要註意,Java被編譯成字節碼(bytecode),這些字節碼會在運行的時候解釋,重編譯)
Pascal
Python有兩種情況:Python在廣泛的使用中不需要編譯,但是主要的實現(CPython)需要編譯成字節碼並且運行字節碼在虛擬機中,它可以把字節碼寫入到文件(.pyc, .pyo)中,使用時,不需要重新編譯

無極榮耀主管51076