源到源编译器
外观
(重定向自源代码至源代码编译器)
此條目可参照外語維基百科相應條目来扩充。 |
程序执行 |
---|
基础概念 |
代码类型 |
编译策略 |
|
知名运行环境 |
著名编译器及工具链 |
源代码到源代码编译器(英語:source-to-source compiler)、翻译器(transcompiler)或转译器(transpiler)是以某种编程语言的程序源代码作为输入,生成以另一种编程语言构成的等效源代码的编译器。源代码到源代码编译器会在大致相同的抽象级别之间抽象化,而传统編譯器则从一个较高等级的高级语言转换为低级语言。举例来说,源代码到源代码编译器可以将一个程序从Pascal转换为C语言。自动并行化编译器经常采用高级语言的程序作为输入,然后转换代码并增加并行代码注释(例如OpenMP)或语言结构(例如Fortran的forall
语句)。[1]
转译语言的例子包括:Closure Compiler、Coccinelle、CoffeeScript、Dart、Haxe、Nim、TypeScript[2]、Vala和Emscripten。[3]
参考资料
[编辑]- ^ Types of compilers. compilers.net. 1997–2005 [28 October 2010]. (原始内容存档于2019-07-19).
- ^ Henson, Valerie. Semantic patching with Coccinelle. lwn.net. January 20, 2009 [28 October 2010]. (原始内容存档于2017-08-20).
- ^ Epic Games. HTML5 Epic Citadel. [2017-08-29]. (原始内容存档于2017-08-21).