-
题名一种利用适合性测试支持方法重定向的演算
被引量:3
- 1
-
-
作者
赵银亮
朱常鹏
韩博
曾庆花
-
机构
西安交通大学电子与信息工程学院
-
出处
《软件学报》
EI
CSCD
北大核心
2013年第7期1495-1511,共17页
-
基金
国家自然科学基金(61173040)
国家高技术研究发展计划(863)(2008AA01Z136)
-
文摘
一些面向上下文的编程语言使用结构化的块结构(block-structured construct)将方法调用重定向到层中方法.但该结构无法支持层的动态添加与激活,这增加了程序可执行文件的大小.为了解决该问题,提出一种新方法:使用适合性测试支持方法的重定向,并定义一个运行时的适合性测试演算(runtime fitness testing calculus on top offeatherweight Java calculus)形式化描述该方法.该演算以FJ演算(featherweight Java calculus)为核心,通过融入新的语言结构——层,基于上下文的方法查找与对象转化描述基于适合性测试的方法重定向,分析它对程序类型安全的影响,制定相应约束,并证明在满足该约束的条件下能够保持程序的类型安全,从而证明所提方法的有效性.以该演算为指导,描述如何通过扩展Java的编译器与虚拟机,实现将层、基于上下文的方法查找与对象转化融入到Java语言,并通过实验测试实现,证明所提方法的可行性.该演算及其实现可用于指导如何扩展类似Java(Java-like)的语言以支持程序基于上下文动态调整其行为,并同时保证程序的类型安全.
-
关键词
面向上下文的编程
层
适合性测试
featherweightJava演算
类型系统
-
Keywords
context-oriented programming
layer
fitness testing
featherweight Java calculus
type system
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名以虚拟机为核心支持动态层绑定的方法
- 2
-
-
作者
朱常鹏
赵银亮
韩博
曾庆花
刘淞佳
-
机构
西安交通大学计算机科学与技术系
-
出处
《计算机研究与发展》
EI
CSCD
北大核心
2014年第2期429-444,共16页
-
基金
国家自然科学基金项目(61173040)
国家"八六三"高技术研究发展计划基金项目(2012AA011003)
-
文摘
一些面向上下文的编程语言已经实现,但在这些语言中所有的层被编译为程序可执行代码的一部分,这限制了程序的应用范围.为了解决该问题,提出一种以虚拟机为核心的方法支持动态层绑定,它融入对象组合与代理到虚拟机实现层激活,利用虚拟机服务支持动态层绑定.为了精确描述该方法并有效分析该方法对程序类型安全的影响,定义一个以Featherweight Java演算为核心的演算.基于该演算,形式化分析它对程序类型安全的影响,定义相应的约束,并证明在满足该约束下动态层绑定能保持程序的类型安全.为证明方法可行,以演算为指导,通过扩展Java的编译器与虚拟机实现并评估该方法.该演算和方法的实现可用于指导类似Java的语言的扩展,以支持程序动态地绑定层,同时保证扩展后语言的类型安全.
-
关键词
虚拟机
面向上下文的编程
对象组合
代理
类型系统
-
Keywords
systemvirtual machine
context oriented programming
object composition
delegation
typed
-
分类号
TP316
[自动化与计算机技术—计算机软件与理论]
-