代码之家  ›  专栏  ›  技术社区  ›  Rick Grimes

我可以在web应用程序中使用JetBrains MPS吗?

  •  5
  • Rick Grimes  · 技术社区  · 6 年前

    我正在用Flask开发一个小型web应用程序。此应用程序需要DSL,DSL可以表示.pdf文件的内容。

    我已经用JetBrains MPS开发了一个DSL,但是现在我不知道如何在我的web应用程序中使用它。有可能吗?或者我应该考虑切换到另一个DSL,或者直接用Python制作DSL。

    2 回复  |  直到 6 年前
        1
  •  3
  •   Christian Dietrich    6 年前

    如果要在web前端使用MPS,简单的答案是: .

    由于MPS是一个投影编辑器,它需要一个投影引擎,以便用户可以与程序/模型交互。MPS的投影引擎是用Java为桌面应用程序构建的。已经有一些努力将MPS放到web上并构建Java脚本/HTML投影引擎,但是没有一项工作是完整的。所以除非你想建立这样的东西,没有办法在前端使用MPS。

    如果你的DSL是文本的,并且没有利用MPS的投影特性,我会使用专门的工具,比如你建议的python或者Xtext,沿着文本DSL的道路走下去。

        2
  •  1
  •   SerialDev    6 年前

    我想如果你决定使用python的DSL,我会给你一个建议。
    TextX 是一个很好的DSL创建库,支持BNF语法并使用PEG解析器。