MIT CSAIL 的研究人员启动了一个新工具 BuildIt,旨在使开发人员更轻松地创建自己的编程语言。
根据 MIT CSAIL 的说法,许多编程语言被归类为领域特定语言(domain-specific languages,DSL),即以某种方式从传统语言中改编出来的语言,是为非 程序员 使用而设计的。但是,DSL 存在的一个可能很难创建的问题。例如,如果要使用 C++创建新的 DSL,则需要聘请专家通过查看团队已经编写的程序来确定需要合并哪些元素来进行设计,并且他们还需要编写一个新的编译器、解析器和代码生成器。
因此,BuildIt 工具则旨在消除聘请专家的需要。它充当一个 multi-staging 框架,可以将语言的复杂性降低到一些通用功能的集合。使用 BuildIt,开发人员只需采用现有程序并进行一些更改,就可以创建 DSL。
MIT CSAIL 博士生 Ajay Brahmakshatriya 解释称,BuildIt 并没有全面了解该程序,而是通过程序中发生的单个简单操作(例如乘法和除法)的狭窄窗口对其进行检查。这相当于一个人走过迷宫:即使他们一次只能看到其中的一部分,他们也可以通过记录观察结果并将标记留在他们探索过的不同路径上来进行导航。
麻省理工学院教授 Saman Amarasinghe 则表示,他希望 BuildIt 能够激发非程序员在他们的工作中使用编程,因为他们不需要太多的编程知识就可以使用这些 DSL。
他认为,有了 BuildIt,任何具有应用领域知识的人,从物理研究人员到疫苗开发人员,都可以编写自己的 DSL,而无需创建大型库。”这为未来几年推进新的创新打开了很多令人兴奋的可能性。“
感兴趣的可以查看 Ajay Brahmakshatriya 与 Saman Amarasinghe 共同撰写的关于 BuildIt 的论文。
猜你喜欢: