跳到主要内容
研究论文
开放式访问

逐步参数化,再次访问

出版:2019年1月2日 出版历史

摘要

事实证明,在保留关系参数性的同时,将渐进式类型的优点带到一种具有参数多态性的语言(如System F)中是极具挑战性的:十年前首次尝试,最近提出了几种设计方案。然而,在其他问题中,这些建议可能会在意外情况下发出参数错误信号,并在涉及不精确类型时不正确地处理类型实例化。这些观察结果进一步表明,现有的多态性铸造结石不适合支持系统F的渐变对应物。因此,我们重新审视了设计具有显式参数多态性的渐变语言的挑战,探索抽象渐进式键入方法在多大程度上帮助我们衍生出这样一种语言GSF。我们介绍了GSF的设计和元理论,并提供了参考实现。除了避免未发现的语义问题外,GSF还满足渐进参数化语言的所有预期属性,只有一个属性除外:在所有之前的工作中作为推测留下的动态渐进保证在这里被证明与参数不相容。然而,我们建立了一个较弱的性质,允许我们反驳关于渐进自由定理的几个主张,澄清了渐进参数支持的推理类型。

补充材料

WEBM文件 (a17-tater.webm)

工具书类

[1]
马丁·阿巴迪、卢卡·卡德利、本杰明·皮尔斯和戈登·普洛特金。1991.静态类型语言中的动态类型。《美国计算机学会编程语言与系统汇刊》13,2(1991年4月),237–268。
[2]
马丁·阿巴迪、卢卡·卡德利、本杰明·皮尔斯和迪迪埃·雷米。1995.多态语言中的动态类型。函数编程杂志5,1(1995),111-130。
[3]
阿马尔·艾哈迈德(Amal Ahmed)、罗伯特·布鲁斯·芬德勒(Robert Bruce Findler)、雅各布·马修斯(Jacob Matthews)和菲利普·沃德勒(Philip Wadler)。2009年,为所有人负责。在脚本到程序进化研讨会(STOP)上。意大利热那亚。
[4]
阿马尔·艾哈迈德(Amal Ahmed)、罗伯特·布鲁斯·芬德勒(Robert Bruce Findler)、杰里米·西克(Jeremy G.Siek)和菲利普·沃德勒(Philip Wadler)。2011年,为所有人负责。第38届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录(POPL 2011)。美国德克萨斯州奥斯汀ACM出版社,201-214。
[5]
阿马尔·艾哈迈德(Amal Ahmed)、达斯汀·贾姆纳(Dustin Jamner)、杰里米·西克(Jeremy G.Siek)和菲利普·沃德勒(Philip Wadler)。2017.免费的定理:参数性,有类型和无类型。参见{ICFP 2017年},39:1–39:28。
[6]
约翰内斯·巴德、乔纳森·奥尔德里奇和埃里克·坦特。2018年,项目逐步验证。在第19届验证、模型检查和抽象解释国际会议(VMCAI 2018)(计算机科学讲稿)的会议记录中,Išil Dillig和Jens Palsberg(编辑),第10747卷。Springer-Verlag,美国加利福尼亚州洛杉矶,25-46。
[7]
费利佩·巴尼亚多斯·施沃特、罗纳德·加西亚和埃里克·坦特。2014.渐进效应系统理论。第19届ACM SIGPLAN函数编程会议记录(ICFP 2014)。瑞典哥德堡ACM出版社,283-295。
[8]
菲利佩·巴尼亚多斯·施沃特、罗纳德·加西亚和埃里克·坦特。2016.渐进式类型和效果系统。函数编程杂志26(2016年9月),19:1–19:69。
[9]
加文·比尔曼(Gavin Bierman)、埃里克·梅耶尔(Erik Meijer)和麦德斯·托格森(Mads Torgersen)。2010.向C#添加动态类型。在第24届欧洲面向对象编程会议(ECOOP 2010)(计算机科学讲稿)的会议记录中,Theo D'Hondt(Ed.)。斯普林格-Verlag,马里博尔,斯洛文尼亚,76-100。
[10]
罗伯特·卡特赖特和迈克·法根。1991年。软输入。在ACM SIGPLAN国际编程语言设计与实现会议(PLDI)的会议记录中。加拿大安大略省多伦多市,278-292。
[11]
朱塞佩·卡斯塔尼亚和维克托·兰文。2017年,采用联合和交叉类型的渐进式打字。参见{ICFP 2017年},41:1–41:28。
[12]
Haskell B.Curry、J.Roger Hindley和J.P.Seldin。1972年,组合逻辑,第二卷。逻辑与数学基础研究,第65卷。北荷兰公社。有限公司。
[13]
多米尼克·德弗里斯(Dominique Devriese)、马克·帕特里格纳尼(Marco Patrignani)和弗兰克·皮森斯(Frank Piessens)。2018.参数与通用类型。美国计算机学会程序设计语言论文集2,POPL(2018年1月),38:1–38:23。
[14]
蒂姆·迪士尼和科马克·弗拉纳根。2011.渐进式信息流键入。在关于脚本到程序的国际研讨会上。
[15]
发光的芬内尔和彼得·蒂曼。2013.带参考的逐步安全打字。第26届计算机安全基础研讨会(CSF)会议记录。224–239.
[16]
发光的芬内尔和彼得·蒂曼。2016。LJGS:面向对象语言的渐进安全类型。在《第30届欧洲面向对象编程会议论文集》(ECOOP 2016)(莱布尼茨国际信息学论文集(LIPIcs))中,Shriram Krishnamurthi和Benjamin S.Lerner(编辑),第56卷。达格斯图尔宫(Schloss Dagstuhl)——莱布尼兹·泽特鲁姆·福尔·Informatik(Leibniz-Zentrum fuer Informatik),意大利罗马,9:1-9:26。
[17]
罗纳德·加西亚、艾莉森·克拉克和埃里克·坦特。2016年,抽象渐变打字。第43届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录(POPL 2016)。美国佛罗里达州圣彼得堡ACM出版社,429–442。
[18]
罗纳德·加西亚和埃里克·坦特。2015.衍生一种简单的渐进安全语言。eprint arXiv:1511.01399。
[19]
罗纳德·加西亚、埃里克·坦特、罗杰·沃尔夫和乔纳森·奥尔德里奇。2014.面向类型状态的编程基础。《美国计算机学会编程语言与系统汇刊》第36、4页,第12条(2014年10月),12:1–12:44页。
[20]
吉恩·伊夫·吉拉德。1972年,《奥德雷·苏佩里厄尔皇宫政变解释》(Interpretation Fonctionnelle et Elimination des Coupures de l’Arthmétique d’Ordre Supérieur)。博士论文。巴黎第七大学,法国巴黎。
[21]
Arjun Guha、Jacob Matthews、Robert Bruce Findler和Shriram Krishnamurthi。2007.相关参数多态性合同。《ACM动态语言研讨会论文集》(DLS 2007)。加拿大蒙特利尔ACM出版社,29-40。
[22]
大卫·赫尔曼(David Herman)、亚伦·汤姆(Aaron Tomb)和科马克·弗拉纳根(Cormac Flanagan)。2010年。节省空间的渐进式打字。《高阶与符号计算》23,2(2010年6月),167-189。
[23]
Kuen-Bang Hou、Nick Benton和Robert Harper。2016年,编译多态性到动态类型的正确性。《函数编程杂志》27(2016),1:1–1:24。
[24]
2017年ICFP。
[25]
Atsushi Igarashi、Peter Thiemann、Vasco T.Vasconcelos和Philip Wadler。2017年b。渐进式训练类型。参见{ICFP 2017年},38:1–38:28。
[26]
Yuu Igarashi、Taro Sekiyama和Atsushi Igarashin。2017年a。论多态性渐变类型。参见{ICFP 2017年},40:1–40:29。
[27]
Lintaro Ina和Atsushi Igarashi。2011.泛型的渐进式键入。第26届ACM SIGPLAN面向对象编程系统、语言和应用会议论文集(OOPSLA 2011)。ACM出版社,美国俄勒冈州波特兰,609–624。
[28]
尼科·莱曼和埃里克·坦特。2017.渐进式精炼类型。第44届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录(POPL 2017)。ACM出版社,法国巴黎,775–788。
[29]
泽维尔·勒罗伊和米歇尔·莫尼。1991年,《ML动力学》,《函数编程语言与计算机体系结构会议论文集》(FPCA 1991)(计算机科学讲稿),第523卷。斯普林格·弗拉格,406-426。
[30]
雅各布·马修斯和阿玛尔·艾哈迈德。2008.通过运行时密封的参数多态性,或,低价定理!。在第17届欧洲编程语言与系统研讨会(ESOP 2008)(计算机科学讲稿)的会议记录中,Sophia Drossopoulou(Ed.),第4960卷。匈牙利布达佩斯施普林格-弗拉格,16-31岁。
[31]
雅各布·马修斯和罗伯特·布鲁斯·芬德勒。2007.多语言项目的操作语义。第34届ACM SIGPLAN-SIGACT编程语言原理研讨会论文集(POPL 2007)。ACM出版社,法国尼斯,3-10。
[32]
约翰·米切尔(John C.Mitchell)。1988.多态类型推断和遏制。信息与计算76,2-3(1988年2月),211-249。
[33]
詹姆斯·莫里斯(James H.Morris),1973年。编程语言保护。Commun公司。ACM 16,1(1973年1月),15-21。
[34]
费比安·穆尔博克(Fabian Muehlboeck)和罗斯·泰特(Ross Tate)。2017年。声音渐变打字在名义上是活跃且良好的。,56:1–56:30页。
[35]
乔治·奈斯(Georg Neis)、德里克·德莱尔(Derek Dryer)和安德烈亚斯·罗斯伯格(Andreas Rossberg),2009年。非参数化参数。第14届ACM SIGPLAN函数编程会议记录(ICFP 2009)。英国苏格兰爱丁堡ACM出版社,135-148。
[36]
Max S.New和Amal Ahmed。2018年,嵌入项目对的渐变。,73:1–73:30页。
[37]
马丁·奥德斯基和康斯坦丁·卢弗。1996年,《将类型注释付诸实践》,载于第23届ACM SIGPLAN-SIGCT编程语言原理研讨会论文集(POPL 96)。美国佛罗里达州圣彼得堡海滩ACM出版社,54-67。
[38]
本杰明·皮尔斯和埃希罗·苏米。2000年,《密码学与多态性的关联》。手稿。
[39]
本杰明·皮尔斯。2002.类型和编程语言。麻省理工学院出版社,美国马萨诸塞州剑桥。
[40]
Aseem Rastogi、Avik Chaudhuri和Basil Hosmer。2012.渐进式推理的来龙去脉。第39届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录(POPL 2012)。美国费城ACM出版社,481-494。
[41]
约翰·C·雷诺兹。1974年。走向类型结构理论。程序设计研讨会(计算机科学讲稿),第19卷。斯普林格·弗拉格,408-423。
[42]
约翰·C·雷诺兹。类型、抽象和参数多态性。《信息处理》83,R.E.A.Mason(编辑)。爱思唯尔,513–523。
[43]
安德烈亚斯·罗斯伯格(Andreas Rossberg),2003年。抽象类型的生成性和动态不透明度。第五届ACM SIGPLAN声明性编程原则与实践会议记录(PPDP 2003)。241–252.
[44]
伊利亚·谢尔盖和戴夫·克拉克,2012年。逐步所有权类型。《第21届欧洲编程语言与系统研讨会论文集》(ESOP 2012)(计算机科学讲稿),Helmut Seidl(Ed.),第7211卷。爱沙尼亚塔林斯普林格·弗拉格,579-599。
[45]
Jeremy Siek和Walid Taha。2006.函数式语言的逐步打字。在方案和函数编程研讨会的会议记录中。81–92.
[46]
杰里米·西克和瓦利德·塔哈。2007.对象的渐进式键入。《第21届欧洲面向对象编程会议论文集》(ECOOP 2007)(计算机科学讲稿),Erik Ernst(Ed.)。德国柏林施普林格-弗拉格,2-27。
[47]
Jeremy Siek和Philip Wadler。2010年。三人组,有无指责。第37届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录(POPL 2010)。ACM出版社,西班牙马德里,365-376。
[48]
Jeremy G.Siek、Michael M.Vitousek、Matteo Cimini和John Tang Boyland。2015年a月。逐步打字的改进标准。第一届程序设计语言进步峰会(SNAPL 2015)(莱布尼茨国际信息学论文集(LIPIcs)),第32卷。美国加利福尼亚州阿西洛玛市莱布尼兹·泽特鲁姆·福尔·Informatik(Leibniz-Zentrum fuer Informatik)达格斯图尔宫(Schloss Dagstuhl),274-293。
[49]
Jeremy G.Siek、Michael M.Vitousek、Matteo Cimini、Sam Tobin-Hochstadt和Ronald Garcia。2015年b。高效渐变类型的单调参考。在第24届欧洲编程语言与系统研讨会(ESOP 2015)(计算机科学讲稿)的会议记录中,Jan Vitek(Ed.),第9032卷。英国伦敦施普林格-弗拉格,432-456。
[50]
Sam Tobin-Hochstadt和Matthias Felleisen。2006.中介语迁移:从脚本到程序。《ACM动态语言研讨会论文集》(DLS 2006)。美国俄勒冈州波特兰ACM出版社,964-974年。
[51]
马蒂亚斯·托罗、罗纳德·加西亚和埃里克·坦特。2018年a。类型驱动的渐进安全性及参考。《美国计算机学会编程语言与系统汇刊》40,4(2018年11月),16:1–16:55。
[52]
马蒂亚斯·托罗、伊丽莎白·拉布拉达和埃里克·坦特。2018年b月。逐步参数,重新审查(附附录)。arXiv:1807.04596{cs.PL}。
[53]
马蒂亚斯·托罗和埃里克·坦特。2017年,工会类型的逐步解读。第24届静态分析研讨会论文集(SAS 2017)(计算机科学讲稿),第10422卷。Springer-Verlag,美国纽约州纽约市,382-404。
[54]
菲利普·沃德勒。1989.免费定理!。在《第四届函数式程序设计语言与计算机体系结构国际会议论文集》(FPCA'89)中。ACM,英国伦敦,347-359。
[55]
罗杰·沃尔夫、罗纳德·加西亚、埃里克·坦特和乔纳森·奥尔德里奇。2011年,逐步类型状态。《第25届欧洲面向对象编程会议论文集》(ECOOP 2011)(计算机科学讲稿),米拉·梅齐尼(编辑),第6813卷。英国兰开斯特施普林格-弗拉格,459–483。
[56]
谢宁宁(Ningning Xie)、玄碧(Xuan Bi)和布鲁诺(Bruno C.d.S.Oliveira)。2018年,为所有人进行一致的分型。在第27届欧洲编程语言与系统研讨会(ESOP 2018)(计算机科学讲稿)的会议记录中,Amal Ahmed(Ed.),第10801卷。Springer Verlag,希腊塞萨洛尼基,3-30。

引用人

查看全部
  • (2024)空间有效的多态渐变类型,主要是参数化的美国计算机学会程序设计语言会议录10.1145/36564418:PLDI(1585-1608)在线发布日期:2024年6月20日
  • (2024)逐渐键入的语言应该警惕!美国计算机学会程序设计语言会议录10.1145/36498428:OOPSLA1(864-892)在线发布日期:2024年4月29日
  • (2023)GTP逐步打字性能基准2023年ACM可再生性和可复制性会议记录10.1145/3589806.3600034(102-114)在线发布日期:2023年6月27日
  • 显示更多引用者

索引术语

  1. 逐步参数化,再次访问

      建议

      评论

      信息和贡献者

      问询处

      发布于

      封面图片美国计算机学会编程语言会议录
      美国计算机学会程序设计语言会议录 第3卷,第POPL期
      2019年1月
      2275页
      EISSN公司:2475-1421
      内政部:10.1145/3302515
      期刊目录
      本作品根据Creative Commons Attribution International 4.0许可证授权。

      出版商

      计算机协会

      美国纽约州纽约市

      出版历史

      出版:2019年1月2日
      在PACMPL中发布体积,问题POPL公司

      权限

      请求对此文章的权限。

      检查更新

      徽章

      作者标记

      1. 逐步键入
      2. 参数
      3. 多态性

      限定符

      • 研究文章

      贡献者

      其他指标

      文献计量学和引文

      文献计量学

      文章指标

      • 下载次数(过去12个月)125
      • 下载次数(最近6周)11
      反映截至2024年9月17日的下载量

      其他指标

      引文

      引用人

      查看全部
      • (2024)空间有效的多态渐变类型,主要是参数化的美国计算机学会程序设计语言会议录10.1145/36564418:PLDI(1585-1608)在线发布日期:2024年6月20日
      • (2024)逐渐键入的语言应该警惕!美国计算机学会程序设计语言会议录10.1145/36498428:OOPSLA1(864-892)在线发布日期:2024年4月29日
      • (2023)GTP逐步打字性能基准2023年ACM可再生性和可复制性会议记录10.1145/3589806.3600034(102-114)在线发布日期:2023年6月27日
      • (2023)语用逐步多态性与指称编程语言和系统10.1007/978-3-031-30044-8_6(140-167)在线发布日期:2023年4月22日
      • (2022)渐变系统F美国医学会杂志10.1145/355598669:5(1-78)在线发布日期:2022年10月28日
      • (2022)两个参数与三个通用类型程序设计语言与系统学报10.1145/353965744:4(1-43)在线发布日期:2022年9月21日
      • (2022)迁移渐变类型函数编程杂志10.1017/S095679682200008932在线发布日期:2022年10月6日
      • (2021)逐步结构化的数据美国计算机学会程序设计语言会议录10.1145/34855035:OOPSLA公司(1-29)在线发布日期:2021年10月15日
      • (2021)渐进式抽象打字前进:精确和节省空间美国计算机学会程序设计语言会议录10.1145/34343425:POPL(1-28)在线发布日期:2021年1月4日
      • (2021)从静态到渐变的完全抽象美国计算机学会程序设计语言会议录10.1145/34342885:POPL(1-30)在线发布日期:2021年1月4日
      • 显示更多引用者

      视图选项

      查看选项

      PDF格式

      以PDF文件查看或下载。

      PDF格式

      电子阅读器

      使用联机查看电子阅读器.

      电子阅读器

      获取访问权限

      登录选项

      完全访问权限

      媒体

      数字

      其他

      桌子

      分享

      分享

      共享此出版物链接

      在社交媒体上分享