检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]东南大学计算机科学与工程系
出 处:《计算机学报》2006年第4期526-534,共9页Chinese Journal of Computers
基 金:国家杰出青年基金(60425206);国家自然科学基金(60373066;90412003;60403016);国家"九七三"重点基础研究发展规划项目基金(2002CB312000);国家教育部博士点基金(20020286004);江苏省高校自然科学研究计划项目基金(05KJD520151)资助.
摘 要:提出一种基于程序模块单子语义的新动态切片方法———模块单子动态切片.首先通过单子转换器,将切片这一类计算抽象成独立于具体语言的实体:切片单子转换器.然后,将该切片转换器作为模块加载到实际程序中,并给出相应的模块单子动态切片算法.据此,可直接在抽象语法结构上计算动态切片,不必记录程序执行历史;相应单子切片器也无需显式地构造诸如依赖图的中间结构.这种模块化抽象机制使得文中的动态切片算法具有很强的可扩展性和重用性.This paper presents a new dynamic slicing method, the modular monadic approach, which is based on modular monadic semantics. With the use of monad transformers, each representing a single notion of computation, the computation of program slicing can be abstracted as an entity that is independent of the language being analyzed, dynamic-slice monad transformer. Its definition and correctness proofs are provided in this paper. This paper also gives and illustrates dynamic slicing algorithm based on modular monadic semantics. The algorithm allows dynamic slices to be computed directly on abstract syntax, without recording an execution history or explicitly constructing intermediate structures, such as dependence graphs, in the corresponding monadic slicers. It is showed to be an appropriate approach to program slicing with excellent flexibility and modularity properties.
关 键 词:程序切片 动态切片 单子 单子转换器 模块单子语义
分 类 号:TP311[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.249