Virtual machine 是否正在将内部DSL转换为外部DSL反模式?

Virtual machine 是否正在将内部DSL转换为外部DSL反模式?,virtual-machine,dsl,oslo,Virtual Machine,Dsl,Oslo,在遗留系统中,我们编写了自己的VM,以便在运行时执行内部DSL。内部虚拟机设计为只运行我们的内部DSL。我们正在重写遗留应用程序。我们正在考虑的一个想法是,将我们的内部DSL转换为外部DSL C或Java,并利用它们的VM 在什么时候为我们的内部DSL编写我们自己的VM,而不是转换为外部DSL并运行该VM,没有明确的指导方针 内部DSL/VM与外部DSL/VM决策与所有构建与购买与下载决策相同。指导方针是明确的,对所有软件都是一样的 为什么要支持自己的虚拟机,而其他人会为您支持Java或Pyth

在遗留系统中,我们编写了自己的VM,以便在运行时执行内部DSL。内部虚拟机设计为只运行我们的内部DSL。我们正在重写遗留应用程序。我们正在考虑的一个想法是,将我们的内部DSL转换为外部DSL C或Java,并利用它们的VM


在什么时候为我们的内部DSL编写我们自己的VM,而不是转换为外部DSL并运行该VM,没有明确的指导方针

内部DSL/VM与外部DSL/VM决策与所有构建与购买与下载决策相同。指导方针是明确的,对所有软件都是一样的

为什么要支持自己的虚拟机,而其他人会为您支持Java或Python

这里有一些明确的指导方针。请注意,对于所有软件,这些都是相同的准则

您继续维护自己的软件是否更便宜。在这种情况下,DSL和VM

您自己的DSL和VM是否比Java或Python更好?通过更好,您必须填写质量因素的任意组合:更快、更小、更可靠、更好的特性、更少的资源使用、更可审核、更安全等等


不要被DSL和VM搞糊涂了。没什么特别的;它只是更多的软件。

内部DSL/VM与外部DSL/VM的决策与所有构建与购买与下载的决策相同。指导方针是明确的,对所有软件都是一样的

为什么要支持自己的虚拟机,而其他人会为您支持Java或Python

这里有一些明确的指导方针。请注意,对于所有软件,这些都是相同的准则

您继续维护自己的软件是否更便宜。在这种情况下,DSL和VM

您自己的DSL和VM是否比Java或Python更好?通过更好,您必须填写质量因素的任意组合:更快、更小、更可靠、更好的特性、更少的资源使用、更可审核、更安全等等


不要被DSL和VM搞糊涂了。没什么特别的;它只是更多的软件。

它绝对不是反模式。与内部DSL相比,外部DSL具有许多优势。独立于宿主语言或实现平台就是其中之一。其他好处是更好的语法灵活性,可以使用模型驱动的方法,如模型转换、模型查看等。

这绝对不是一种反模式。与内部DSL相比,外部DSL具有许多优势。独立于宿主语言或实现平台就是其中之一。其他好处是更好的语法灵活性,可以使用模型驱动的方法,如模型转换、模型查看等