天大主页 | 设为首页 | 添加收藏
首页 > 综合新闻 > 正文

天津大学智能与计算学部助力华为“仓颉”编程语言编译器质量保障研究

      2024-06-22       

本站讯 2024年6月21日,华为面向全球开发者发布华为自研编程语言——仓颉(Cangjie)。仓颉编程语言是一款面向全场景智能的新一代编程语言,主打“原生智能化、天生全场景、高性能,强安全”。融入鸿蒙生态,为开发者提供良好的编程体验。这是仓颉编程语言的首次公开亮相,对国产编程语言的发展具有重要意义。

天津大学智能与计算学部软件工程团队携手华为仓颉团队,深度参与仓颉编程语言编译器的质量保障研究,从软件测试角度出发,为仓颉编译器质量保驾护航。五年来,团队陈俊洁教授、王赞教授、姜佳君研究员,以及赵英全、付瑞丰、郭以勒、郑开、樊兴宇等十余名研究生,围绕着仓颉编译器测试工作开展深入研究,提出数据驱动的仓颉编译器系统化测试框架,涵盖基于程序综合的测试程序生成技术、基于程序变异的测试预言构造技术、基于代码表示的测试过程加速技术等多项先进技术。成果在软件工程领域顶会ICSE、ISSTA等发表多篇学术论文,并已部署至仓颉编译器的实际测试中,显著提升仓颉编译器测试效果。

研究成果中,“基于程序综合的测试程序生成技术”将程序代码拆解成细粒度代码片段,彼此之间涉及不同的语言特征,进而在语法语义约束的指导下,实现测试程序的高效合成。“基于程序变异的测试预言构造技术”通过对仓颉编程语言语法语义进行深入分析与理解,设计一系列等价变异算子与不等价变异算子。提升技术揭错能力,增强测试程序多样性,实现对仓颉编译器的更充分测试。“基于代码表示的测试过程加速技术”旨在提升编译器测试效率,以在更短的时间内检测到更多的编译器缺陷。

仓颉编程语言是一款面向全场景应用开发的现代编程语言,通过现代语言特性的集成、全方位的编译优化和运行时实现、以及开箱即用的IDE工具链支持,为开发者打造友好开发体验和卓越程序性能。仓颉编译器是与仓颉编程语言共生的基础软件。在仓颉编程语言的筹备阶段,与之相配的高质量编译器成为核心目标之一。随着仓颉编程语言的演化,仓颉编译器也在不断的升级、改进。



(编辑 刘延俊)