【发布时间】:2021-07-14 08:12:53
【问题描述】:
我有一个使用 TextGen 生成到 Ruby 类中的概念(我们称之为 A)。我希望有可能将相同的概念生成到其他语言中,例如 Python。有人可以描述如何做或一些提示吗?
【问题讨论】:
标签: metaprogramming jetbrains-ide mps
我有一个使用 TextGen 生成到 Ruby 类中的概念(我们称之为 A)。我希望有可能将相同的概念生成到其他语言中,例如 Python。有人可以描述如何做或一些提示吗?
【问题讨论】:
标签: metaprogramming jetbrains-ide mps
我建议您为此使用 plaintextgen 插件 (https://plugins.jetbrains.com/plugin/8444-com-dslfoundry-plaintextgen)。然后,您可以只使用缩减规则来生成文本。这方面的教程可以在这里找到:https://dslfoundry.com/plaintextgen-tutorial/
使用 textgen 方面也是可能的,但对您的用例而言涉及更多,因为它要求您对每种基于文本的目标语言(Python、Ruby、C# 等)都有一个现有的 MPS 语言,或者您自己实现这种目标语言的最低版本(至少包含您在生成结果中需要的构造的概念和 textgen 方面)。
【讨论】: