×

使用术语重写策略的类型化泛型遍历。 (英语) Zbl 1026.68076号

摘要:建立了战略术语改写的类型化模型。关键的创新是涵盖了通用遍历。为此,我们定义了一个类型重写演算(S_{\gamma}'\)。微积分使用由指定的通用策略类型\(\gamma\)扩展的多分类类型系统。我们考虑两种通用策略类型,即类型保留策略和类型统一策略\(S_{\gamma}'\)提供了遍历组合子,以从多个分类和泛型策略构造遍历或其方案。遍历组合子对不同形式的一步遍历进行建模,也就是说,它们处理给定项的直接子项,而不需要预测任何项的递归方案。要驻留泛型类型,我们需要添加一个基本的组合符来将多排序策略提升到泛型类型。这一步骤称为策略扩展。相应组合词的语义表明,只有当现有术语的类型适合时,才应用“(s)”,否则扩展策略将失败。这种方法规定,战略应用程序的语义必须在一定程度上依赖于类型。覆盖泛型术语遍历的类型化策略术语重写是泛型编程的一个简单但富有表现力的模型。它在程序转换和程序分析中有应用。

MSC公司:

2012年第68季度 语法和重写系统
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] E.Astesiano,M.Bidoit,H.Kirchner,B.Krieg-Brückner,P.D.Mosses,D.Sannella,A.Tarlecki,CASL:公共代数规范语言,理论计算机科学(2001),即将出版;E.Astesiano,M.Bidoit,H.Kirchner,B.Krieg-Brückner,P.D.Mosses,D.Sannella,A.Tarlecki,CASL:公共代数规范语言,理论计算机科学(2001),即将出版·Zbl 1061.68103号
[2] M.阿巴迪。;Cardelli,L。;皮尔斯,B。;Plotkin,G.,静态类型语言中的动态类型,ACM编程语言和系统事务,13,2,237-268(1991)
[3] M.阿巴迪。;Cardelli,L。;皮尔斯,B。;Rémy,D.,多态语言中的动态类型,(摘自:1992年美国计算机学会ML及其应用研讨会论文集,旧金山,1992年6月(1992),计算机械协会:纽约计算机械协会),92-103·Zbl 0819.68142号
[4] Barendregt,H.,Lambda calculi with types,(in:《计算机科学逻辑手册》,第2卷(1992),牛津大学出版社:牛津大学出版社)·Zbl 0445.03005号
[5] 巴巴内拉,F。;Dezani-Ciancaglini,M。;de'Liguoro,U.,交集和并集类型:语法和语义,信息和计算,119,2202-230(1995)·Zbl 0832.68065号
[6] 范登·布兰德,M.G.J。;海林,J。;德容,H。;de Jonge,M。;库佩斯,T。;Klint,P。;Moonen,L。;奥利弗·P。;谢尔德,J。;文朱,J。;维瑟,E。;Visser,J.,《ASF+SDF元环境:基于组件的语言开发环境》,(摘自:Compiler Construction 2001(CC 2001)。in:编译器构造2001(CC 2001),计算机科学讲稿,第2027卷(2001),施普林格:施普林格柏林)·Zbl 0977.68762号
[7] Bergstra,J.A.(伯格斯特拉,J.A.)。;海林,J。;Klint,P.,代数规范形式主义ASF,(in:代数规范(1989),ACM出版社与Addison-Wesley合作),1-66,第1章·兹比尔0711.68073
[8] P.Borovansky、C.Kirchner、H.Kirchner,通过重写控制重写,收录于:Meseguer[49];P.Borovansky、C.Kirchner、H.Kirchner,通过重写控制重写,收录于:Meseguer[49]·Zbl 0912.68088号
[9] P.Borovanskí、C.Kirchner、H.Kirchner,P.-E.Moreau、C.Ringeissen。ELAN概述,见:Kirchner和Kirchner[37];P.Borovanskí、C.Kirchner、H.Kirchner,P.-E.Moreau、C.Ringeissen。ELAN概述,见:Kirchner和Kirchner[37]
[10] 博罗万斯克,P。;基什内尔,C。;基什内尔,H。;Ringeissen,C.,用战略改写ELAN公司:功能语义学,《国际计算机科学基础杂志》(2001年)·Zbl 1319.68125号
[11] M.G.J.van den Brand,P.Klint,J.Vinju,带遍历函数的术语重写,SE N-R0121,CWI,阿姆斯特丹,2001;M.G.J.van den Brand,P.Klint,J.Vinju,带遍历函数的术语重写,SE N-R0121,CWI,阿姆斯特丹,2001·Zbl 1270.68143号
[12] van Bakel,S。;利库里,L。;della Rocca,S.R。;Urzyczyn,P.,比较类型化和类型赋值系统的立方体,《纯粹逻辑和应用逻辑年鉴》,86,3,267-303(1997)·Zbl 0952.03010号
[13] 范登·布兰德,M.G.J。;塞林克,M.P.A。;Verhoef,C.,从上下文无关文法生成软件翻新工厂的组件,(Baxter,I.D.;Quilici,A.;Verhoef.,C.,《第四届逆向工程工作会议论文集》(1997),144-153
[14] 范登·布兰德,M.G.J。;塞林克,M.P.A。;Verhoef,C.,从上下文无关文法生成软件翻新工厂的组件,计算机编程科学,36,2-3,209-266(2000)
[15] Coppo,M。;Dezani-Ciancaglini,M。;Venneri,B.,可解项的函数特征,Zeitschrift für Mathematische Logik und Grundlagen der Mathematik,27,45-58(1981)·Zbl 0479.03006号
[16] Clavel,M。;杜兰,F。;艾克,S。;林肯,P。;市场&#x0301-Oliet,北。;梅塞盖尔,J。;Quesada,J.F.,《Maude系统系统描述》,(Narendran,P.;Rusinovitch,M.,《第十届改写技术与应用国际会议论文集》(RTA-99),意大利特伦托。《第十届改写技术与应用国际会议论文集》(RTA-99),意大利特伦托,计算机科学讲义,第1631卷(1999年7月),施普林格:施普林格柏林),240-243
[17] Clavel,M。;杜兰,F。;Marti-Oliet,N.,Maude的Polytypic编程,(Futatsugi,K.,ENTCS,第36卷(2001),Elsevier:Elsevier Amsterdam)·Zbl 0962.68030号
[18] M.Clavel,S.Eker,P.Lincoln,J.Meseguer,莫德原则,载于:Meseguer[49];M.Clavel、S.Eker、P.Lincoln、J.Meseguer,《莫德原则》,摘自:Meseguer[49]
[19] 卡斯塔尼亚,G。;Ghelli,G。;Longo,G.,带子类型的重载函数演算,信息与计算,117,1,115-135(1995)·Zbl 0819.03005号
[20] H.Cirstea,C.Kirchner,《重写演算导论》,3818号研究报告,INRIA,1999年12月;H.Cirstea,C.Kirchner,重写演算简介,Rapport de recherche 3818,INRIA,1999年12月·Zbl 0986.03026号
[21] 希尔斯塔,H。;基什内尔,C。;Liquori,L.,The rho cube,(Honsell,Furio,《软件科学和计算结构基础》,意大利热那亚。《软件科学与计算结构基础”,意大利热纳瓦,计算机科学讲义,第2030卷(2001年4月),168-183·Zbl 0978.68072号
[22] Cardelli,L。;Wegner,P.,关于理解类型、数据抽象和多态性,ACM计算调查,17,4,471-522(1985)
[23] 克雷利(Crary,K.)。;Weirich,S。;Morrisett,G.,《类型提取语义中的内涵多态性》,(摘自:ACM SIGPLAN功能编程国际会议论文集(ICFP’98)。in:《ACM SIGPLAN函数编程国际会议记录》(ICFP’98),ACM SIGPLAN通告,第34卷(1)(1999年6月),ACM:ACM纽约),301-312·Zbl 1370.68046号
[24] T.Despeyroux,TYPOL:实现自然语义的形式主义,技术报告94,INRIA,1988年3月;T.Despeyroux,TYPOL:实现自然语义的形式主义,技术报告94,INRIA,1988年3月
[25] C.Dubois,F.Rouaix,P.Weis,《扩展多态性》,载于《第22届ACM编程语言原则会议论文集》,1995年1月;C.Dubois,F.Rouaix,P.Weis,《扩展多态性:第22届ACM编程语言原则会议论文集》,1995年1月
[26] H.Geuvers,逻辑与类型系统,博士论文,奈梅亨卡托利克大学计算机科学研究所,1993年;H.Geuvers,逻辑和类型系统,博士论文,奈梅亨卡托利克大学计算机科学研究所,1993年
[27] J.-Y.Girard,《法国巴黎第七大学博士论文解释》,1972年;J.-Y.Girard,《法国巴黎第七大学博士论文解释》,1972年
[28] B.Gramlich,S.Lucas(编辑),《改写和规划中的削减战略国际研讨会论文集》(WRS 2001),第SPUPV 2359卷,荷兰乌得勒支,2001年5月,巴伦西亚政治大学公共服务部;B.Gramlich,S.Lucas(编辑),《重写和编程中的削减战略国际研讨会论文集》(WRS 2001),第SPUPV 2359卷,荷兰乌得勒支,2001年5月,巴伦西亚政治大学公共服务部
[29] Glew,N.,命名层次类型的类型调度,(in:ACM SIGPLAN国际函数编程会议(ICFP-99)。摘自:ACM SIGPLAN函数编程国际会议(ICFP-99),ACM SIGPLAN通告,第34.9卷(1999年9月27日至29日),ACM:ACM纽约),172-182·Zbl 1345.68083号
[30] R.Hinze,Haskell的通用编程扩展,见:E.Meijer(Ed.),《第三届Haskell-研讨会论文集》,巴黎,法国,1999年9月,技术报告,乌得勒支大学,UU-CS-1999-28;R.Hinze,《Haskell的通用编程扩展》,载于:E.Meijer(Ed.),《第三届哈斯克尔研讨会论文集》,巴黎,法国,1999年9月,技术报告,乌得勒支大学,UU-CS-1999-28
[31] 哈珀,R。;Morrisett,G.,使用有意类型分析编译多态性,(在:POPL’95会议记录:第22届ACM SIGPLAN-SIGCT编程语言原理年度研讨会,加利福尼亚州旧金山(1995年1月),ACM:ACM纽约),130-141
[32] J.Jeuring(编辑),《2000年WGP会议记录》,技术报告,乌得勒支大学,2000年7月;J.Jeuring(编辑),《2000年WGP会议记录》,技术报告,乌得勒支大学,2000年7月
[33] 詹森,P。;Jeuring,J.,PolyP-一种多类型编程语言扩展,(in:POPL’97:第24届ACM SIGPLAN-SIGACT编程语言原理研讨会(1997),ACM:纽约ACM),470-482
[34] Jones,M.P.,《带重载和高阶多态性的函数编程》(Jeuring,J.;Meijer,E.,《高级函数编程》,《计算机科学讲义》,第925卷(1995年),Springer:Springer Berlin),97-136
[35] P.Johann,E.Visser,《将逻辑和控制与局部变换相融合:一个示例优化》,乌得勒支大学信息与计算科学研究所技术报告,2001年;P.Johann,E.Visser,《逻辑和控制与局部转换的融合:示例优化》,乌得勒支大学信息与计算科学研究所技术报告,2001年·Zbl 1268.68098号
[36] Kahn,G.,《自然语义学》,(摘自:第四届计算机科学理论方面年度研讨会,1987年2月19日至21日,德国帕绍。摘自:第四届计算机科学理论方面年度研讨会,1987年2月19日至21日,德国帕绍,计算机科学讲稿,第247卷(1987),施普林格:施普林格柏林),22-39·Zbl 0657.68079号
[37] 基什内尔,C。;Kirchner,H.,(《重写逻辑及其应用国际研讨会论文集》(WRLA’98),法国蓬塔·穆森。《重写逻辑及其应用国际研讨会论文集》(WRLA’98),法国蓬特-阿-穆森,ENTCS,第15卷(1998年9月),爱思唯尔:爱思唯尔阿姆斯特丹)·Zbl 0903.00070号
[38] Klint,P.,《生成编程环境的元环境》,《ACM软件工程与方法汇刊》,2,2,176-201(1993)
[39] R.Lämmel,通用类型保护遍历策略,in:Gramlich和Lucas[28];R.Lämmel,通用类型保护遍历策略,收录于:Gramlich和Lucas[28]
[40] R.Lämmel,W.Lohmann,格式演变,摘自:第七届信息系统逆向工程国际会议论文集(RETIS 2001),第155卷books@ocg.atOCG,2001年,第113-134页;R.Lämmel,W.Lohmann,格式演变,摘自:第七届信息系统逆向工程国际会议论文集(RETIS 2001),第155卷books@ocg.at,OCG,2001年,第113-134页
[41] K.J.Lieberherr,B.Patt-Shamir,《对象结构的遍历:规范和高效实现》,技术报告NU-CCS-97-15,东北大学计算机科学学院,马萨诸塞州波士顿,1997年7月;K.J.Lieberherr,B.Patt-Shamir,《对象结构的遍历:规范和高效实现》,技术报告NU-CCS-97-15,东北大学计算机科学学院,马萨诸塞州波士顿,1997年7月
[42] 拉梅尔,R。;Riedewald,G.,《逻辑语言处理》(van den Brand,M.G.J.;Parigot,D.,Proc.LDTA’01)。程序。LDTA’01,ENTCS,第44卷(2001年4月),Elsevier:Elsevier阿姆斯特丹)
[43] Luttik,B。;Visser,E.,重写策略规范,(Sellink,M.P.A.,第二届代数规范理论与实践国际研讨会(ASF+SDF'97),计算电子研讨会(1997年11月),Springer:Springer Berlin)
[44] R.Lämmel,J.Visser,类型安全功能策略。in:2000年7月圣安德鲁斯SFP’00会议记录草案;R.Lämmel,J.Visser,类型安全功能策略。in:2000年7月,圣安德鲁斯SFP'00会议记录草案
[45] R.Lämmel,J.Visser,通用遍历的类型组合符,技术报告SEN-R0124,Centrum voor Wiskunde en Informatica,2001年8月,34页;也发表于柏林斯普林格LNCS 2257《PADL'02会议录》;R.Lämmel,J.Visser,通用遍历的类型组合符,技术报告SEN-R0124,Centrum voor Wiskunde en Informatica,2001年8月,34页;也发表于柏林斯普林格LNCS 2257《PADL'02会议录》
[46] R.Lämmel,J.Visser,J.Kort,《处理大香蕉》。in:Jeuring[32];R.Lämmel,J.Visser,J.Kort,《处理大香蕉》。中:Jeuring[32]
[47] 拉梅尔,R。;Wachsmuth,G.,《ASF+SDF元环境中SDF语法定义的转换》,(van den Brand,M.;Parigot,D.,《语言描述、工具和应用第一次研讨会论文集》(LDTA’01),意大利热那亚,2001年4月7日,ETAPS’2001卫星活动。语言描述、工具和应用第一次研讨会会议记录(LDTA’01),意大利热那亚,2001年4月7日,ETAPS’2001卫星活动,ENTCS,第44卷(2001年4月份),Elsevier:Elsevier Amsterdam)
[48] Meertens,L.,多型计算!,(Kuchen,H.;Swierstra,S.D.,程序语言、实现、逻辑和程序国际研讨会(PLILP’96)。项目国际研讨会。语言、实现、逻辑和程序(PLILP’96),计算机科学讲义,第1140卷(1996),施普林格:施普林格-柏林),1-16
[49] (Meseguer,J.,《重写逻辑及其应用第一届国际研讨会论文集》,RWLW’96(美国加利福尼亚州太平洋格罗夫市Asilomar)。第一届重写逻辑及其应用国际研讨会论文集,RWLW’96(美国加利福尼亚州太平洋格罗夫市阿西洛玛),ENTCS,第4卷(1996年9月)
[50] Milner,R.,《编程中的类型多态性理论》,《计算机与系统科学杂志》,17,3,348-375(1978)·Zbl 0388.68003号
[51] P.-E.Moreau,《非终点站标准与战略汇编》,博士论文,亨利·蓬卡雷南希大学,1999年;P.-E.Moreau,《非终点站标准与战略汇编》,博士论文,亨利·彭加雷南希大学,1999年1月
[52] Paulson,L.C.,重写的高阶实现,计算机程序设计科学,3,2,119-149(1983)·Zbl 0551.68076号
[53] Pettersson,M.,RML——一种新的自然语义语言和实现,(Hermenegildo,M.;Penjam,J.,《第六届编程语言实现和逻辑编程国际研讨会论文集》,PLILP’94。第六届编程语言实现和逻辑编程国际研讨会论文集,PLILP’94,计算机科学讲义,第844卷(1994),Springer:Springer Berlin),117-131
[54] Reynolds,J.C.,《朝向类型结构理论》,(摘自:编程研讨会(巴黎编程学会)。in:编程研讨会(巴黎编程学会),计算机科学讲稿,第19卷(1974年),施普林格:施普林格柏林),408-425·Zbl 0309.68016号
[55] Reynolds,J.C.,《类型、抽象和参数多态性》(Mason,R.E.A.,第九届IFIP世界计算机大会会议记录,83年,法国巴黎(1983年9月19日至23日),北荷兰:北荷兰阿姆斯特丹),513-523
[56] Schmidt,D.A.,《类型化编程语言的结构》,收录于:《计算基础系列》(1994),麻省理工学院出版社:麻省理学院出版社剑桥·Zbl 0834.68004号
[57] Spivey,M.,《异常的函数理论》,《计算机程序设计科学》,第14期,第25-42页(1990年)·Zbl 0699.68022号
[58] E.Visser,Z.Benaissa,重写的核心语言,in:Kirchner和Kirchner[37];E.Visser,Z.Benaissa,重写的核心语言,in:Kirchner和Kirchner[37]·Zbl 0917.68098号
[59] 维瑟,E。;Benaissa,Z。;Tolmach,A.,《用重写策略构建程序优化器》,(in:函数式编程国际会议(ICFP'98),马里兰州巴尔的摩,ACM SIGPLAN(1998年9月)),13-26·Zbl 1369.68084号
[60] E.Visser,程序转换的语言无关遍历,in:Jeuring[32];E.Visser,程序转换的语言无关遍历,in:Jeuring[32]
[61] E.Visser,《项目转型系统战略调查》,收录于:Gramlich和Lucas[28];E.Visser,《项目转型系统战略调查》,收录于:Gramlich和Lucas[28]
[62] Wadler,P.,免费定理!,(摘自:《第四届功能程序语言与计算机架构国际会议论文集》,89年FPCA,英国伦敦(1989年9月11日至13日),ACM:ACM纽约),347-359
[63] P.Wadler,《函数编程的本质》,载于:ACM(Ed.),第十九届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录,新墨西哥州阿尔伯克基,1992年1月19日至22日,ACM,纽约,第1-14页;P.Wadler,函数式编程的本质,在:ACM(编辑),第十九届ACM SIGPLAN-SIGCT编程语言原理年度研讨会会议记录,阿尔伯克基,NM,1992年1月19-22日,ACM,纽约,第1-14页
[64] P.Wadler和S.Blott。如何制作特别的特别的; P.Wadler和S.Blott。如何制作特别的特别的
此参考列表基于出版商或数字数学图书馆提供的信息。它的项目与zbMATH标识符启发式匹配,并且可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。