我正在使用 Flask 开发一个小型网络应用程序。此应用程序需要一个 DSL,它可以表达 .pdf 文件的内容。
我已经使用 JetBrains MPS 开发了 DSL,但现在我不确定如何在我的 Web 应用程序中使用它。是否可以?或者我应该考虑切换到另一个 DSL 还是直接在 Python 中创建我的 DSL。
最佳答案
如果您想在 Web 前端使用 MPS,简单的回答是:否。
由于 MPS 是一个投影编辑器,它需要一个投影引擎,以便用户可以与程序/模型进行交互。 MPS 的投影引擎是用 Java 构建的,用于桌面应用程序。已经有一些努力将 MPS 放到 web 上并构建 Java Script/HTML 投影引擎,但没有一项工作是完整的。因此,除非您构建类似的东西,否则无法在前端使用 MPS。
如果您的 DSL 无论如何都是文本的并且没有利用 MPS 的投影性质,我会使用专门的工具沿着文本 DSL 的道路走下去,例如您建议的 python 或 Xtext。
关于python - 我可以在 Web 应用程序中使用 JetBrains MPS 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51762908/