高向尚;杰里米·吉本斯 用装饰品编程。 (英语) Zbl 1418.68035号 J.功能。程序。 27,论文编号e2,43 p.(2017)。 摘要:依赖类型编程提倡使用相同形状数据的各种索引版本,但这些结构相似的数据类型之间的形式关系通常需要手动建立,而且繁琐乏味。装饰被提议作为管理此类数据类型变体之间关系的正式机制。本文在装饰框架下进行了案例研究;该案例研究涉及编程二项式堆及其操作,包括插入和最小提取,将其视为二进制数和数字操作的提升版本。我们展示了当前依赖类型的编程技术如何在实现堆操作时对二项式堆约束进行清晰的处理。我们还发现了当前技术与我们希望开发的理想的依赖类型编程语言之间的一些差距。 引用于三文件 MSC公司: 68甲18 函数编程和lambda演算 软件:阿格达 PDF格式BibTeX公司 XML格式引用 \textit{H.-S.Ko}和\textit{J.Gibbons},J.Funct。程序。27,论文编号e2,43 p.(2017;Zbl 1418.68035) 全文: 内政部 参考文献: [1] 伯纳迪J-P.&MoulinG公司。(2013)颜色类型理论。《函数编程国际会议论文集》,TarmoUustalu(ed),ICFP’13。美国纽约州纽约市:ACM,第61-72页·Zbl 1323.68198号 [2] BoveA.和戴布杰尔。(2009)工作中的依赖类型。《语言工程和严格软件开发》,Ana Bove、Luís Soares Barbosa、Alberto Pardo和Jorge Sousa Pinto(编辑),《计算机科学讲义》,第5520卷。德国柏林:Springer-Verlag,第57-99页·Zbl 1250.68086号 [3] 布雷迪。,麦克布赖德C&麦金纳J。(2004)归纳家庭无需存储其指数。在《校对和程序类型》中,StefanoBerardi、MarioCoppo和FerruccioDamiani(eds),《计算机科学讲义》,第3085卷。德国柏林:Springer-Verlag,第115-129.10.1007/b98246页·Zbl 1052.68001号 [4] 查普曼J。,达甘德-É., 麦克布莱德公司莫里斯。(2010)轻柔的悬浮艺术。《函数编程国际会议论文集》,Stephanie Weirich(编辑),ICFP’10。美国纽约州纽约市:ACM,第3-14页·Zbl 1323.68239号 [5] 旋塞xJ。,DevrieseD.&开发皮森斯。(2014)无K的模式匹配。在函数编程国际会议上,Manuel M.T.Chakravarty(ed),ICFP’14。美国纽约州纽约市:ACM,第257-268页·Zbl 1345.68045号 [6] 捷克。,福斯特J.N.,HuZ。,LämmelR公司。,SchürrA和TerwilligerJ.F.(2009)《双向转型:跨学科视角》。《模型转换国际会议论文集》,Richard F.Paige(ed),《计算机科学讲义》,第5563卷。德国柏林:Springer-Verlag,第260-283页。 [7] 达甘德-É. & 麦克布莱德。(2013)详细归纳定义。《法语应用杂志》,JFLA’13。法国罗琴科:INRIA。 [8] 达甘德-É. & 麦克布莱德。(2014)跨饰品运输功能。J.功能。程序.24(2-3),316-383.10.1017/S0956796814000069·Zbl 1297.68047号 ·doi:10.1017/S095679681400069 [9] DevrieseD.&开发皮森斯。(2011)类型类的优点:Agda中的实例参数。《函数编程国际会议论文集》,Olivier Danvy(ed),ICFP'11。美国纽约州纽约市:ACM,第143-155页·Zbl 1323.68108号 [10] 戴布杰尔。(1994)归纳家庭。表Asp。计算6(4),440-465.10.1007/BF01211308·Zbl 0808.03044号 ·doi:10.1007/BF01211308 [11] 高更。,麦克布莱德公司麦金纳J。(2006)消除依赖模式匹配。《代数、意义和计算》,KokichiFutatsugi、Jean-PierreJouannaud和JoséMeseguer,(编辑),《计算机科学讲义》,第4060卷。德国柏林:Springer-Verlag,第521-540页·Zbl 1132.68327号 [12] 科赫-S.(2014)归纳族的分析与合成。牛津大学博士论文。 [13] 科赫-S.&GibbonsJ。(2013a)模块化感应家庭。掠夺。Informat.10,65-88。 [14] 科赫-S.&GibbonsJ。(2013b)关系代数装饰品。在《独立类型编程》(Dependently Typed Programming)一书中,斯蒂芬妮·魏里奇(Stephanie Weirich),DTP’13。美国纽约州纽约市:ACM,第37-48页。 [15] 科帕洛夫A。(2003)依赖交集:类型理论中定义记录的新方法。《计算机科学中的逻辑》,Phokion G.Kolaitis(编辑),LICS’03。美国哥伦比亚特区华盛顿:IEEE,第86-95页。 [16] 马丁·洛夫。(1984)直觉类型理论。那不勒斯图书馆·Zbl 0571.03030号 [17] 麦克布莱德。(2011)装饰代数,代数装饰。未发表的手稿。 [18] 麦克布莱德。(2014)如何使你的邻居井然有序。《函数编程国际会议论文集》,Manuel M.T.Chakravarty(ed),ICFP’14。美国纽约州纽约市:ACM,第297-309页·Zbl 1345.68065号 [19] 麦克布赖德C&麦金纳J。(2004)左侧视图。J.功能。程序.14(1),69-111.10.1017/S0956796803004829·Zbl 1069.68539号 ·doi:10.1017/S0956796803004829 [20] 诺雷尔大学。(2007)基于依赖类型理论的实用程序设计语言。查尔默斯科技大学博士论文。 [21] 诺雷尔大学。(2009)Agda中的依赖类型编程。在高级函数编程中,PieterKoopman、RinusPlasmeijer和DoaitseSwierstra(eds),《计算机科学讲义》,第5832卷。德国柏林:Springer-Verlag,第230-266.10007/978-3642-04652-0页·兹比尔1176.68009 [22] 冈崎。(1999)纯功能数据结构。剑桥大学出版社·Zbl 0941.68032号 [23] 安全系数和LingerN.(2007)《Ωmega编程》。在中欧函数编程学校,ZoltánHorváth、RinusPlasmeijer、AnnaSoós和ViktóriaZsók(编辑),《计算机科学讲义》,第5161卷。德国柏林:Springer-Verlag,第158-227页·Zbl 1170.68419号 [24] 威廉姆斯。,达甘德-É. & 雷米德。(2014)实际装饰。在通用编程研讨会上,JoséPedroMagalhäes和TiarkRompf(eds),WGP’14。美国纽约州纽约市:ACM,第15-24页。 此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。