这是出现来可以支持DSL 开发的工具,这大大的改变了局面。Intentional Software 所开发的 Intentional Domain Workbench 比 Java 还要久,它首先实现了该工具的功能。该项目开始于微软研究院,Charles Simonyi博士在 1995 年所发表的论文“The Death ofComputer Languages,the Birth of Intentional Programming”中描绘了其愿景。2002年,Simonyi 创建了 Intentional Software 以继续实现他的想法,一个巨大的系统中获得的令人印象深刻的视频。该产品现在是1.0 版本,但访问权仅限于有限合伙人。其他的一些公司也开始研究这项技术,其中包括一IntrelliJ IEDA Java IDE 而出名的 JetBrains,它最近发布了 Meta Programming System(MPS)1.0 版。MPS 并没有使用分析器,而是直接使用 Abstact Syntax Tree(AST) 。他提供了一个可以允许程序员来操作的AST 以及可以编写语言和程序的文本编辑器。当程序员使用投影时就会为树上的每个借点创建一个文本,这样变化就会反映到节点当中。开发者能通过这样的方法开任意组合。JetBrains 正在内部使用这个产品,最近发布了 bug 追踪产品 YouTrack就是使用该系统开发的。结论在语言的发展中总是有有一个权衡的稳定和进步。这些技术所带来的优点是他们根本不影响平台或者语言。这样可以包容更多的错误,有益于我们进行快速的试验。由于开发者可以进行随意的试验,所以我们看到越来越多的人开始解决常见的样板代码“噪音”问题,例如匿名内部类语法等,同时将这些想法整理出来已获得价值。看看开发人员如何使用这些 不同的方法开推动新的方向Java 平台,这将是很有趣的。 Java演进英文文献和中文翻译(3):http://www.751com.cn/fanyi/lunwen_34731.html