跳到主要内容
10.1145/1863543.1863596acm会议文章/章节视图摘要出版物页面国际货币基金组织会议记录会议集合
研究论文

实例链:没有重叠实例的类型类编程

发布时间:2010年9月27日出版历史记录

摘要

类型类在Haskell程序中有着广泛的用途,从简单的操作符重载(例如等式或排序)到用于实现类型安全异类列表或有限子类型的复杂不变量。不幸的是,类型类的许多更丰富的用途都需要对类系统进行扩展,这些扩展在研究文献中没有完全描述,在Haskell社区中也没有被普遍接受。

本文描述了一种新型类系统,该系统在名为伊拉布,它简化并增强了Haskell风格的类型类编程。伊拉布,我们用一个新的特征替换重叠的实例,实例链,允许在实例声明中进行显式更改和失败。我们描述了一种将语义归属于类型类系统的技术,将类、实例和类约束(例如种类签名或函数依赖)直接关联到类型关系的集合理论模型。最后,我们给出了伊拉布并描述其实现。

跳过补充材料部分

补充材料

icfp-weds-1750-morris.mov公司

压敏电阻

141.2 MB

工具书类

  1. }}I.S.Diatchki和M.P.Jones。强类型内存区:用函数语言对系统级数据结构进行编程。Haskell'06,第72-83页,美国俄勒冈州波特兰,2006年。ACM公司。谷歌学者谷歌学者数字图书馆数字图书馆
  2. }}T.哈尔格伦。在Haskell中,函数依赖或(草稿)类型作为静态计算中的值很有趣。程序中。2001年CS/CE冬季联合会议。谷歌学者谷歌学者
  3. }}B.Heeren和J.Hage。类型类指令。在PADL'05中,第253-267页。Springer-Verlag,2005年。谷歌学者谷歌学者数字图书馆数字图书馆
  4. }}M.P.Jones先生。限定类型理论。在B.K.布鲁克纳(B.K.Bruckner)编辑的《92年员工持股计划》(ESOP)第582卷中。施普林格·弗拉格,英国伦敦,1992年。谷歌学者谷歌学者数字图书馆数字图书馆
  5. }}M.P.Jones先生。合格类型:理论与实践。剑桥大学出版社,1994年。谷歌学者谷歌学者数字图书馆数字图书馆
  6. }}M.P.Jones先生。具有函数依赖关系的类型类。《2000年员工持股计划》,第230-244页,英国伦敦,2000年。斯普林格·弗拉格。谷歌学者谷歌学者数字图书馆数字图书馆
  7. }}M.P.Jones和I.S.Diatchki。功能依赖的语言和程序设计。在哈斯克尔交响乐团。,第87-98页,加拿大不列颠哥伦比亚省维多利亚市,2008年。ACM公司。谷歌学者谷歌学者数字图书馆数字图书馆
  8. }}O.Kiselyov和R.Lämmel。哈斯克尔被忽视的对象系统。草案;提交出版;自2005年9月10日起上线。谷歌学者谷歌学者
  9. }}O.Kiselyov、R.Lämmel和K.Schupke。强类型异类集合。Haskell'04,第96-107页,雪鸟,犹他州,美国,2004年。ACM出版社。谷歌学者谷歌学者数字图书馆数字图书馆
  10. }}D.迈尔。关系数据库理论。计算机科学出版社,1983年。谷歌学者谷歌学者数字图书馆数字图书馆
  11. }}J.G.Morris。经验报告:使用Hackage为语言设计提供信息。2010年,美国马里兰州巴尔的摩Haskell’10。ACM公司。谷歌学者谷歌学者数字图书馆数字图书馆
  12. }}M.Neubauer、P.Thiemann、M.Gasbichler和M.Sperber。函数依赖的函数表示法。2001年9月,意大利费伦泽Haskell'01。谷歌学者谷歌学者
  13. }}S.Peyton Jones、M.P.Jones和E.Meijer。类型类:对设计空间的探索。1997年6月,荷兰阿姆斯特丹哈斯克尔。谷歌学者谷歌学者
  14. }}T.Schrijvers、S.Peyton Jones、M.Chakravarty和M.Sulzmann。使用开放式函数进行类型检查。在IFCP’08中,第51-62页,加拿大不列颠哥伦比亚省维多利亚市,2008年。ACM公司。谷歌学者谷歌学者数字图书馆数字图书馆
  15. }}J.Shapiro、S.Sridhar和S.Doeririe.BitC(0.11过渡)语言规范。http://www.bitc-lang.org/docs/bitc/spec.html。上次访问时间:2010年6月15日。谷歌学者谷歌学者
  16. }}D.斯坦尼茨。导出类型签名的类型类。http://www.haskell.org/pipermail/haskell-cafe/2008-11月/050409.html2008年11月。谷歌学者谷歌学者
  17. }}M.Sulzmann、G.J.Duck、S.Peyton Jones和P.J.Stuckey。通过约束处理规则了解函数依赖性。JFP,17(1):83-1292007年。谷歌学者谷歌学者数字图书馆数字图书馆
  18. }}W.Swierstra。数据类型à点菜。JFP,18(04):423--4362008年。谷歌学者谷歌学者数字图书馆数字图书馆
  19. }}D.M.Volpano和G.S.Smith。关于带有重载的ML可类型性的复杂性。1991年,美国马萨诸塞州剑桥市,1991年,《1991年联邦公共政策法案》第15-28页。斯普林格·弗拉格。谷歌学者谷歌学者数字图书馆数字图书馆
  20. }}P.Wadler先生。表达式问题。http://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt, 1998.谷歌学者谷歌学者
  21. }}P.Wadler和S.Blott。如何使即席多态性不那么即席。1989年,美国德克萨斯州奥斯汀,《89年流行音乐》,第60-76页。ACM。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 实例链:没有重叠实例的类型类编程

      建议

      评论

      登录选项

      请检查您是否可以通过登录凭据或您的机构访问此文章以获得完全访问权限。

      登录

      完全访问权限

      • 发布于

        封面图片ACM会议
        ICFP’10:第15届ACM SIGPLAN功能编程国际会议记录
        2010年9月
        398页
        国际标准图书编号:9781605587943
        内政部:10.1145/1863543
        • 封面图片ACM SIGPLAN注意事项
          ACM SIGPLAN通知 第45卷第9期
          ICFP’10年
          2010年9月
          382页
          国际标准编号:0362-1340
          EISSN公司:1558-1160
          内政部:10.1145/1932681
          期刊目录

        版权所有©2010 ACM

        如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

        出版商

        计算机协会

        美国纽约州纽约市

        出版历史记录

        • 发布时间:2010年9月27日

        权限

        请求有关此文章的权限。

        请求权限

        检查更新

        限定符

        • 研究论文

        验收费率

        总体验收率333属于1064个提交文件,31%

        即将召开的会议

        24年ICFP
        ACM SIGPLAN函数编程国际会议
        2024年9月9日至13日
        米兰,意大利

      PDF格式

      以PDF文件查看或下载。

      PDF格式

      电子阅读器

      使用eReader联机查看。

      电子阅读器

      电子出版物

      在ePub中查看本文。

      查看ePub