CC
CC-IP0101 51410056-175 用程序设计语言作为其输入
源到源翻译器,源到源编译器(S2S编译器),跨编译器,或者运输工具[1][2][3]是一种翻译者那需要源代码一个用程序设计语言作为其输入,并以相同或不同的编程语言产生等效的源代码。源到源翻译器在运行于大约相同级别的编程语言之间进行转换抽象,而传统的编译程序翻译自高级编程语言敬a低级编程语言。例如,源到源翻译器可以执行程序从计算机编程语言到Java Script语言,而传统的编译器是从C到装配工或者Java 语言(一种计算机语言,尤用于创建网站)到字节码。[4]一;一个自动并行化编译器将经常接受高级语言程序作为输入然后转换代码并用并行代码注释对其进行注释(例如,OpenMP)或语言结构(例如FORTRAN语言s报表)。[2][5]
源代码到源代码编译的另一个目的是翻译遗留代码,以使用下一版本的底层编程语言或打破向后兼容性的API。它将自动执行代码重构当要重构的程序超出了原始实现者的控制范围时(例如,将程序从Python 2转换到Python 3,或者将程序从旧API转换到新API),[①③ ③ ⑥ ⑤ ⑼ 0⑨ ③ 0⑦]或者当程序的大小使得手工重构不切实际或者很耗时时,这是很有用的。
代码转换器可以保持翻译后的代码结构尽可能接近源代码,以便于开发排除故障或者可能将原始代码的结构改变太多,以至于翻译后的代码看起来不像源代码。[6]还有一些调试工具可以将转换后的源代码映射回原始代码;例如,在Java Script语言源地图标准[需要引用]允许映射由网页浏览器例如,当JavaScript代码被缩小或由转换为JavaScript的语言产生时,返回到原始源代码。[需要引用]
举报/反馈