【发布时间】:2009-05-08 12:26:55
【问题描述】:
有人知道Stratego/XT 编程语言吗?到底有什么好处呢?有什么好的和/或不好的经历吗?任何真实的现场运行示例?
非常感谢。
【问题讨论】:
标签: compiler-construction programming-languages
有人知道Stratego/XT 编程语言吗?到底有什么好处呢?有什么好的和/或不好的经历吗?任何真实的现场运行示例?
非常感谢。
【问题讨论】:
标签: compiler-construction programming-languages
Stratego/XT 是一种基于术语重写和可编程重写策略的程序转换语言和工具集。
您可以在http://strategoxt.org 找到有关语言和工具集的文档和科学论文。
Stratego/XT 的实际应用是 WebDSL (webdsl.org),这是一种用于开发 Web 应用程序的领域特定语言,而后者又被用于构建 researchr.org。
Stratego/XT 也是 Spoofax/IMP 工具集的基础,用于为自定义(特定领域)语言构建 Eclipse IDE 插件(请参阅stratego 网站上的 Spoofax-IMP 页面)。
【讨论】:
改用TXL。它更容易开始并完成类似的工作。其网站上有示例。
【讨论】:
如果您对 Stratego(或 TXL)感兴趣,您可能会对 DMS Software Reengineering Toolkit 感兴趣。
DMS 是一个功能齐全的程序转换系统,其核心是提供源到源的重写,例如 Stratego 和 TXL。您可以使用它来实现您自己的自定义 DSL 编译器,或大规模源代码更改引擎。
DMS 的不同之处在于它可以通过 Java、C#、C++、C 和 COBOL 的测试前端来获得,其中大部分将解析您的源代码、构建 AST 和符号表,以及一些其中的一些提供控制流、数据流和指向分析器的点。
分析基础架构是通用的,也可以在您的 DSL 上使用。
您可以在网站上找到这些系统的比较。
【讨论】: