原始碼到原始碼編譯器

將原始碼轉換為在類似抽象等級中執行的不同程式語言等效版本的編譯器

原始碼到原始碼編譯器(英語:source-to-source compiler)、翻譯器transcompiler)或轉譯器transpiler)是以某種程式語言的程式原始碼作為輸入,生成以另一種程式語言構成的等效原始碼的編譯器。原始碼到原始碼編譯器會在大致相同的抽象級別之間抽象化,而傳統編譯器則從一個較高等級的高階語言轉換為低階語言。舉例來說,原始碼到原始碼編譯器可以將一個程式從Pascal轉換為C語言。自動並列化英語Automatic parallelizing編譯器經常採用高階語言的程式作為輸入,然後轉換代碼並增加並列代碼註釋(例如OpenMP)或語言結構(例如Fortranforall陳述式)。[1]

轉譯語言的例子包括:Closure Compiler英語Google Closure ToolsCoccinelle英語Coccinelle (software)CoffeeScriptDartHaxeNimTypeScript[2]ValaEmscripten[3]

參考資料

  1. ^ Types of compilers. compilers.net. 1997–2005 [28 October 2010]. (原始內容存檔於2019-07-19). 
  2. ^ Henson, Valerie. Semantic patching with Coccinelle. lwn.net. January 20, 2009 [28 October 2010]. (原始內容存檔於2017-08-20). 
  3. ^ Epic Games. HTML5 Epic Citadel. [2017-08-29]. (原始內容存檔於2017-08-21).