gpt4 book ai didi

metaprogramming - 自动移植工具和可以编译成其他语言的语言

转载 作者:行者123 更新时间:2023-12-01 04:11:09 25 4
gpt4 key购买 nike

我只是出于好奇问这个:

  • 是否有任何工具可以自动将具有合理复杂性的源代码从一种语言转换为另一种语言?
  • 有没有可以编译成其他几种语言的“元语言”?例如 CoffeeScript 编译成 Javascript。

  • 如果您知道任何开源示例,那就太好了!

    感谢您的时间。

    PS:不知道如何标记这个。随意编辑。

    最佳答案

    GCC 将复杂的 C++ 代码转换为机器代码,因此在技术上可以回答您的问题。其实这样的编译器有很多,但我想这些不是你想问的。

    有些工具是硬连接的,可以将一种语言作为源代码翻译成另一种语言(另一张海报建议使用“f2C”,这是一个完美的例子)。这些就像编译器......但很少见。

    几乎没有任何工具可以从一种语言映射到许多其他语言,开箱即用。问题在于语言具有不同的执行模型、数据类型和执行方案,这样的翻译器必须在目标语言中正确模拟。
    这些是声称可以做到这一点的“代码生成器”,但它们主要是相当简单的函数的恕我直言规范,这些函数可以简单地转换为目标语言中的简单代码。

    如果你想以一种通用的方式将一种语言翻译成另一种语言,你需要一个程序转换系统,例如,一个可以解析任意语言的系统,并且你可以为它提供以某种方式映射到其他语言的翻译规则直截了当的方式。

    我们的 DMS Software Reengineering Toolkit 就是其中之一。这个 SO What kinds of patterns could I enforce on the code to make it easier to translate to another programming language? 更详细地讨论了这些问题。

    关于metaprogramming - 自动移植工具和可以编译成其他语言的语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6215558/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com