麻省理工学院的研究人员提出了一种清晰的模块化软件的新模型

编码框架使用模块化概念和简单的同步规则,使软件更清晰、更安全、更易于法学硕士生成。

来源:MIT新闻 - 人工智能

使用大型语言模型 (LLM) 进行编码具有巨大的前景,但它也暴露了软件中一些长期存在的缺陷:代码混乱、难以安全地更改,并且通常对幕后实际发生的情况不透明。麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究人员正在规划一条更加“模块化”的前进道路。

他们的新方法将系统分解为“概念”,即系统的各个部分,每个部分都旨在做好一项工作,以及“同步”,即准确描述这些部分如何组合在一起的明确规则。其结果是软件更加模块化、透明且更易于理解。小型领域特定语言 (DSL) 可以以 LLM 可以可靠生成的形式简单地表达同步。在现实世界的案例研究中,该团队展示了这种方法如何将分散在多个服务中的功能整合在一起。

该团队包括麻省理工学院电气工程和计算机科学 (EECS) 教授、CSAIL 副主任 Daniel Jackson,以及 EECS 博士生、CSAIL 附属机构和新同步 DSL 的设计者 Eagon Men,他们在 10 月份在新加坡 Splash 会议上发表的论文“所见即所得:清晰软件的结构模式”中探讨了这种方法。 他们解释说,挑战在于,在大多数现代系统中,单个功能永远不会完全独立。例如,向 Instagram 等社交平台添加“分享”按钮不仅仅存在于一项服务中。其功能分为处理发布、通知、用户身份验证等的代码。所有这些部分尽管分散在代码中,但必须仔细对齐,任何更改都可能在其他地方产生意想不到的副作用。

所见即所得:清晰软件的结构模式