-
题名Apla中泛型约束机制研究
被引量:13
- 1
-
-
作者
左正康
薛锦云
-
机构
中国科学院软件研究所计算机科学国家重点实验室
江西省高性能计算技术重点实验室(江西师范大学)
中国科学院大学
-
出处
《软件学报》
EI
CSCD
北大核心
2015年第6期1340-1355,共16页
-
基金
国家自然科学基金(61462039
61020106009
+5 种基金
61363012
61363013)
江西省自然科学基金(20142BAB217023
20142BAB217026
20142BAB207026)
江西省教育厅科技项目(GJJ14268)
-
文摘
泛型程序设计可大幅提高程序的可重用性、可靠性和开发效率.泛型约束机制是对泛型参数进行形式描述,并对其合法性进行检测及验证,从而保证泛型程序的可靠性和安全性.分析总结多种主流语言的泛型约束特性,存在难以描述及验证基于动态语义的复杂约束需求问题,与完整实现GP尚有距离;以抽象程序设计语言Apla为宿主语言,提出了基于代数结构及公理语义的泛型约束方法,给出了基本数据类型、自定义抽象数据类型和子程序的3类泛型约束机制,拓展了泛型程序设计约束的应用范围.同时,支持静态语法和动态语义层约束,提高了泛型约束的精确度;借助Isabelle定理证明器,设计了泛型约束匹配检测和验证算法;进一步设计了泛型约束机制在PAR平台的实现方案及其系统原型.实验部分给出了该泛型约束机制描述、检测及验证一系列复杂泛型约束问题的全过程,自动生成的C++模板程序的可靠性和安全性得到显著提高.
-
关键词
泛型约束机制
APLA语言
代数结构
动态语义约束
安全性
-
Keywords
generic constraints mechanism
Apla language
algebraic structure
dynamic semantic constraint
safety
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-