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

时间:2018-08-09 09:03:05

标签: python flask dsl jetbrains-ide mps

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

我已经用JetBrains MPS开发了DSL,但是现在我不确定如何在Web应用程序中使用它。可能吗?还是应该考虑切换到另一个DSL或直接在Python中创建我的DSL。

2 个答案:

答案 0 :(得分:3)

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

由于MPS是投影编辑器,因此需要投影引擎,以便用户可以与程序/模型进行交互。 MPS的投影引擎是用Java构建的,用于桌面应用程序。已经进行了一些努力将MPS放到Web上并构建Java Script / HTML投影引擎,但是这些工作还没有完成。因此,除非您要构建类似的东西,否则无法在前端使用MPS。

如果您的DSL仍然是文本的,并且没有利用MPS的投射特性,那么我会使用专门的工具(例如,您建议的python或Xtext。

答案 1 :(得分:1)

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