×

3D中的通用编程。 (英语) Zbl 1192.68138号

概述:对泛型编程的支持包括三个基本要素:支持重载函数、运行时类型表示和数据的泛型视图。数据类型通用编程的不同方法在这个设计空间中占据了不同的位置。在本文中,我们重新审视了“废弃样板”方法,并确定了它在三维设计空间中的位置。“废弃样板文件”的特征是它的两个通用视图,即用于消费和转换数据的“spine”视图和用于生成数据的“type-spine”视图。我们展示了如何将这些视图与不同的重载机制和类型表示相结合。

MSC公司:

68甲18 函数编程和lambda演算
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Generic Haskell用户指南,1.42版–Coral Release,技术报告UU-CS-2005-004,乌得勒支大学,2005
[2] Alimarine,A。;Plasmeijer,R.:clean,Lect的通用编程扩展。计算机中的注释。科学。2312, 168-185 (2002) ·Zbl 1053.68547号
[3] Altenkirch,T。;Mcbride,C.:独立类型编程中的泛型编程,IFIP conf.Proc。243, 1-20 (2003) ·Zbl 1089.68529号
[4] Altenkirch,T。;Mcbride,C。;Morris,P.:具有依赖类型的泛型编程,Lect。计算机中的注释。科学。4719, 209-257 (2007)
[5] Backhouse,R。;Jansson,P。;Jeuring,J。;Meertens,L.:通用编程:导论,Lect。计算机中的注释。科学。1608, 28-115 (1999)
[6] 本克,M。;Dybjer,P。;Jansson,P.:依赖型理论中泛型程序和证明的宇宙,北欧计算机杂志。10,第4期,265-289(2003)·Zbl 1094.68012号
[7] 伯德·R。;Meertens,L.:嵌套数据类型,Lect。计算机中的注释。科学。1422, 52-67 (1998)
[8] W.Braun,M.Rem,灵活数组的对数实现,备忘录MR83/4,埃因霍温理工大学,1983年
[9] J.切尼。;Hinze,R.:泛型和动力学的轻量级实现,90-104(2002)
[10] Claessen,K.:并行解析过程,J.funct。编程14,No.6,741-757(2004)·Zbl 1063.68029号 ·doi:10.1017/S0956796804005192
[11] 克拉克,D。;Löh,A.:通用haskell,特别是IFIP conf.Proc。243, 21-48 (2003)
[12] 克雷利(Crary,K.)。;Weirich,S.:柔性类型分析,ACM SIGPLAN通知34(9),233-248(1999)·兹比尔1345.68085
[13] 克雷,K。;Weirich,S。;Morrisett,G.:类型提取语义的内涵多态性,ACM SIGPLAN注意事项34(1),301-312(1998)·Zbl 1040.68059号
[14] 费加拉斯,L。;Sheard,T.:用嵌入式函数(或来自外层空间的程序)重新审视数据类型的变形,284-294(1996)
[15] 霍尔,C.V。;哈蒙德,K。;Jones,S.Peyton;Wadler,P.:在haskell中键入类,ACM trans。程序。语言系统。18,第2期,109-138(1996)
[16] 哈珀,R。;Morrisett,G.:使用内涵类型分析编译多态性,130-141(1995)
[17] R.Hinze,Haskell的通用编程扩展,见:E.Meijer(Eds.),Proc。1999年Haskell Wksh。,1999年10月,巴黎,UU-CS-1999-28技术报告,乌得勒支大学,1999
[18] Hinze,R.:《功能性珍珠:完美树和位覆盖排列》,J.funct。编程10,No.3,305-317(2000)·Zbl 0957.68027号
[19] Hinze,R.:通用函数编程的新方法,119-132(2000)·Zbl 1323.68122号
[20] Hinze,R.:多型值具有多基因型,Sci。计算。编程43,No.2–3,129-159(2002)·Zbl 1016.68021号 ·doi:10.1016/S0167-6423(02)00025-4
[21] Hinze,R.:幻影类型的乐趣,编程的乐趣,计算的基石,245-262(2003)
[22] Hinze,R.:大众泛函,J.funct。编程16,No.4-5,451-483(2006)·Zbl 1122.68022号 ·网址:10.1017/S0956796806006006022
[23] Hinze,R。;Jeuring,J.:通用haskell:应用,Lect。计算机中的注释。科学。2793, 57-97 (2003) ·Zbl 1274.68050号
[24] Hinze,R。;Jeuring,J.:《通用哈斯克尔:实践与理论》,莱克特出版社。计算机中的注释。科学。2793, 1-56 (2003) ·Zbl 1274.68049号
[25] Hinze,R。;Jeuring,J。;Löh,A.:类型索引数据类型,科学。计算。编程51,编号1–2,117-151(2004)·兹比尔1091.68025 ·doi:10.1016/j.scico.2003.07.001
[26] R.Hinze、A.Löh、lhs2TeX、,http://people.cs.uu.nl/andres/lhs2tex网站/
[27] Hinze,R。;Löh,A.:Lect,“刮掉你的样板”革命。计算机中的注释。科学。4014, 180-208 (2006) ·Zbl 1235.68053号
[28] Hinze,R。;Löh,A.:通用编程,现在!,莱克特。计算机中的注释。科学。4719, 150-208 (2007)
[29] Hinze,R。;Löh,A。;Oliveira,B.C.D.S.:Lect,“刮掉你的样板”重新加载。计算机中的注释。科学。3945, 13-29 (2006) ·Zbl 1185.68196号 ·doi:10.1007/11737414_3
[30] R.Hinze,A.Löh,B.C.d.S.Oliveira,“刮掉你的锅炉板”,重新加载,技术报告IAI-TR-2006-2,波恩大学信息研究所III,2006年1月·Zbl 1185.68196号
[31] Hinze,R。;Jones,S.Peyton:可导出类型类,Electron。理论上的注释。计算。科学。41(1), 5-35 (2001) ·Zbl 1262.68028号
[32] J.Hughes,Haskell中的受限数据类型,收录于:E.Meijer(编辑),Proc。1999年Haskell Wksh。,1999年10月,巴黎,UU-CS-1999-28技术报告,乌得勒支大学,1999
[33] Jansson,P。;Jeuring,J.:Polyp——一种多类型编程语言扩展,470-482(1997)
[34] Jones,M.P.:构造函数类系统:重载和隐式高阶多态性,J.funct。编程5,No.1,1-35(1995)·Zbl 0819.68027号 ·doi:10.1017/S0956796800001210
[35] Jones,M.P.:具有函数依赖性的类型类,Lect。计算机中的注释。科学。1782, 230-244 (2000) ·Zbl 0971.68641号
[36] 拉梅尔,R。;Jones,S.Peyton:废弃更多样板:反射、拉链和通用演员阵容,ACM SIGPLAN公告39(9)、244-255(2004)·兹比尔1323.68130
[37] 拉梅尔,R。;Jones,S.Peyton:用类废弃你的样板:可扩展通用函数,ACM SIGPLAN通知40(9),204-215(2005)·兹比尔1302.68062
[38] Leijen,D。;Meijer,E.:特定领域嵌入式编译器,109-122(1999)
[39] Löh,A。;Hinze,R.:开放数据类型和开放函数,133-144(2006)
[40] A.Löh,探索通用Haskell,博士论文,乌得勒支大学,2004年
[41] 诺雷尔,美国。;Jansson,P.:Lect haskell的Polytypic编程。计算机中的注释。科学。3145, 168-184 (2004) ·Zbl 1108.68351号 ·doi:10.1007/b102274
[42] 奥利维拉,B.C.D.S。;Gibbons,J.:《类型案例:类型诱导功能的设计模式》,98-109(2005)
[43] Jones,S.Peyton:Haskell 98语言和库,(2003)·Zbl 1067.68041号
[44] Jones,S.Peyton;Lämmel,R.:废弃样板:通用编程的实用方法,ACM SIGPLAN通知38(3),26-37(2003)
[45] Pil,M.:动态类型和依赖类型的函数,Lect。计算机中的注释。科学。1595, 169-185 (1999)
[46] Plasmeijer,R。;Achten,P.:万维网通用编辑,Lect。计算机中的注释。科学。4164, 1-34 (2006)
[47] Reig,F.:基于组合子的泛型程序的泛型证明,《函数编程趋势》5,17-32(2006)
[48] 苏尔兹曼,M。;Wang,M.:具有可扩展超类的模块化泛型编程,55-65(2006)
[49] Trifonov,V。;萨哈,B。;Shao,Z.:全反射强度类型分析,ACM SIGPLAN注意到35(9),82-93(2000)·Zbl 1321.68176号
[50] Wadler,P.:免费定理!,347-359 (1989)
[51] Weirich,S.:编码内涵类型分析,Lect。计算机中的注释。科学。2028, 92-106 (2001) ·Zbl 0987.68851号
[52] Weirich,S.:类型安全演员,J.funct。《编程》14,第6期,681-695(2004)·Zbl 1063.68041号 ·doi:10.1017/S0956796804005179
[53] Weirich,S.:副本:可派生类型类的库,1-12(2006)
[54] Zenger,C.:索引类型,Theoret。计算。科学。187,第1-2号,147-165(1997)·Zbl 0893.68086号 ·doi:10.1016/S0304-3975(97)00062-5
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。