计算机研究与发展
計算機研究與髮展
계산궤연구여발전
JOURNAL OF COMPUTER RESEARCH AND DEVELOPMENT
2014年
2期
429-444
,共16页
朱常鹏%赵银亮%韩博%曾庆花%刘淞佳
硃常鵬%趙銀亮%韓博%曾慶花%劉淞佳
주상붕%조은량%한박%증경화%류송가
虚拟机%面向上下文的编程%对象组合%代理%类型系统
虛擬機%麵嚮上下文的編程%對象組閤%代理%類型繫統
허의궤%면향상하문적편정%대상조합%대리%류형계통
virtual machine%context-oriented programming%object composition%delegation%typed system
一些面向上下文的编程语言已经实现,但在这些语言中所有的层被编译为程序可执行代码的一部分,这限制了程序的应用范围.为了解决该问题,提出一种以虚拟机为核心的方法支持动态层绑定,它融入对象组合与代理到虚拟机实现层激活,利用虚拟机服务支持动态层绑定.为了精确描述该方法并有效分析该方法对程序类型安全的影响,定义一个以Featherweight Java演算为核心的演算.基于该演算,形式化分析它对程序类型安全的影响,定义相应的约束,并证明在满足该约束下动态层绑定能保持程序的类型安全.为证明方法可行,以演算为指导,通过扩展Java的编译器与虚拟机实现并评估该方法.该演算和方法的实现可用于指导类似Java的语言的扩展,以支持程序动态地绑定层,同时保证扩展后语言的类型安全.
一些麵嚮上下文的編程語言已經實現,但在這些語言中所有的層被編譯為程序可執行代碼的一部分,這限製瞭程序的應用範圍.為瞭解決該問題,提齣一種以虛擬機為覈心的方法支持動態層綁定,它融入對象組閤與代理到虛擬機實現層激活,利用虛擬機服務支持動態層綁定.為瞭精確描述該方法併有效分析該方法對程序類型安全的影響,定義一箇以Featherweight Java縯算為覈心的縯算.基于該縯算,形式化分析它對程序類型安全的影響,定義相應的約束,併證明在滿足該約束下動態層綁定能保持程序的類型安全.為證明方法可行,以縯算為指導,通過擴展Java的編譯器與虛擬機實現併評估該方法.該縯算和方法的實現可用于指導類似Java的語言的擴展,以支持程序動態地綁定層,同時保證擴展後語言的類型安全.
일사면향상하문적편정어언이경실현,단재저사어언중소유적층피편역위정서가집행대마적일부분,저한제료정서적응용범위.위료해결해문제,제출일충이허의궤위핵심적방법지지동태층방정,타융입대상조합여대리도허의궤실현층격활,이용허의궤복무지지동태층방정.위료정학묘술해방법병유효분석해방법대정서류형안전적영향,정의일개이Featherweight Java연산위핵심적연산.기우해연산,형식화분석타대정서류형안전적영향,정의상응적약속,병증명재만족해약속하동태층방정능보지정서적류형안전.위증명방법가행,이연산위지도,통과확전Java적편역기여허의궤실현병평고해방법.해연산화방법적실현가용우지도유사Java적어언적확전,이지지정서동태지방정층,동시보증확전후어언적류형안전.