一句话:提出 SemServGen 框架,用统一语言 SemaDSL 声明 DSL 语义服务并自动生成可执行实现,开发效率提升约 2 倍。
领域特定语言(DSL)在工业界被广泛用于解决特定领域问题,但设计 DSL 只是第一步:要真正提升开发效率与系统质量,还需要完整的语法与语义服务,而当前语义服务主要靠人工实现,成本高昂。本文提出 SemServGen,一个为 DSL 语义服务开发提供结构化方法的框架,包含三部分:统一的语义服务表达语言 SemaDSL、提供编辑/语法/语义/模板/DSL 绑定服务的 SemServ-editor,以及自动语义服务生成器 SemServ-gen。SemaDSL 支持规约通用与领域特定的语义服务,SemServ-gen 将这些形式化规约翻译为可执行的语义服务。作者与工业伙伴合作,以 CRL 与 SemaDSL 作为目标 DSL 进行评估:结果表明 SemaDSL 能以较高可用性建模语义服务领域概念,相比人工实现,开发效率在 CRL 上提升 2.5 倍、在 SemaDSL 上提升 1.9 倍,且生成的语义服务满足工业标准的服务分析时间性能基准。
Domain-Specific Languages (DSLs) are widely used across industries for addressing challenges within specific domains. However, designing a DSL is just the first step in DSL engineering. To truly enhance development efficiency and system quality, comprehensive syntax and semantic services are essential. Currently, semantic services are primarily implemented manually, leading to high development costs. Automating their generation can significantly improve efficiency and reduce costs in DSL projects. This paper presents SemServGen, a framework that defines a structured approach to DSL semantic service development. SemServGen comprises SemaDSL, a unified semantic service expression language; SemServ-editor, which provides editing, syntax, semantic, template, and DSL-binding services; and SemServ-gen, an automated semantic service generator. SemaDSL enables the specification of both generic and domain-specific semantic services, while SemServ-gen translates these formal specifications into executable semantic services. We evaluated SemServGen with industry partners using CRL and SemaDSL as target DSLs. The results demonstrate that SemaDSL effectively models semantic service domain concepts with high usability, while SemServGen increases development efficiency by 2.5 times for CRL and 1.9 times for SemaDSL compared to manual implementation. Additionally, the generated semantic services meet industry-standard performance benchmarks for service analysis time.
@inproceedings{paperbot9184,
title = {SemServGen: Advancing Industrial Domain-Specific Language Engineering through Semantic Service Generation},
author = {Yong Wang and Ning Ge and Jingyao Li and Loulin Wang and Guangyu Zhou and Chengrui Deng and Li Zhang and Chunming Hu},
booktitle = {FSE},
year = {2025},
doi = {10.1145/3696630.3728550}
}