×

理解单子。 (英语) Zbl 0798.68040号

摘要:范畴理论家在20世纪60年代发明了单子,以简明地表达泛代数的某些方面。函数式程序员在20世纪70年代发明了列表理解,以简洁地表达某些涉及列表的程序。本文展示了如何将列表理解推广到任意单体,以及由此产生的编程特性如何在纯函数语言中简明地表达一些处理状态、处理异常、解析文本或调用延续的程序。针对破坏性阵列更新这一老问题,提出了一种新的解决方案。假设不了解范畴理论。

MSC公司:

68第05页 数据结构
68甲15 编程语言理论
18立方厘米 单子(=标准结构,三元组或三元组),单子代数,单子的同调函子和派生函子
18立方厘米 理论(例如代数理论)、结构和语义
68问题65 抽象数据类型;代数规范
08A70号 泛代数在计算机科学中的应用
03B40型 组合逻辑与lambda演算

软件:

哈斯克尔
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Appel,第16届ACM程序设计语言原理研讨会(1989)
[2] 哈珀,标准ML的定义,第2版(1988年)
[3] Wadler,函数式编程语言的实现(1987)
[4] Wadler,第二届函数式编程语言与计算机体系结构研讨会(1985年)
[5] Turner,《第二届函数式编程语言和计算机体系结构国际会议论文集》(1985年)
[6] 特纳,函数编程及其应用(1982)
[7] 内政部:10.1016/0167-6423(90)90056-J·Zbl 0699.68022号 ·doi:10.1016/0167-6423(90)90056-J
[8] 内政部:10.1145/3318.3323·Zbl 0562.68008号 ·数字对象标识代码:10.1145/3318.3323
[9] Reynolds,《信息处理》83,第513页–(1983年)
[10] 雷诺兹,自动化、语言和编程学术讨论会(1974年)
[11] 内政部:10.1145/15042.15043·数字对象标识代码:10.1145/15042.15043
[12] 内政部:10.1016/0304-3975(75)90017-1·Zbl 0325.68006号 ·doi:10.1016/0304-3975(75)90017-1
[13] Moggi,编程语言的抽象视图(1989)
[14] Moggi,IEEE计算机科学逻辑研讨会(1989年)
[15] Milner,ACM Lisp和函数编程研讨会(1984年)
[16] Mason,IEEE计算机科学逻辑研讨会(1989年)
[17] Mac Lane,《工作数学家的类别》(1971)·doi:10.1007/978-1-4612-9839-7
[18] Lambek,《高阶范畴逻辑导论》(1986)·Zbl 0596.0302号
[19] 休斯,函数编程,格拉斯哥1989(1989)
[20] 内政部:10.1093/comjnl/32.2.98·doi:10.1093/comjnl/32.2.98
[21] Hudak,编程语言报告Haskell:1.1版(1991)
[22] Hudak,图形简化研讨会(1986年)
[23] Hudak,ACM Lisp和函数编程会议,第351页–(1986年)
[24] Holmström,SERC/Chalmers声明式编程研讨会论文集(1983)
[25] Guzmán,IEEE计算机科学逻辑研讨会(1990年)
[26] Gordon,Ediburgh LCF(1979年)·doi:10.1007/3-540-09724-4
[27] Goguen,高阶编程不需要高阶函数(1988)
[28] Gifford,ACM Lisp和函数编程会议,第28页–(1986)
[29] Wadler,第19届程序设计语言原理年度研讨会论文集(1992年)
[30] 内政部:10.1002/spe.4380170603·doi:10.1002/spe.4380170603
[31] Bloss,第四届函数式编程语言与计算机体系结构研讨会(1989年)
[32] Wadler,部分评估和基于语义的程序操作(PEPM)会议(1991年)
[33] Bird,函数编程导论(1988)
[34] 巴尔,拓扑,三元组和理论(1985)·doi:10.1007/9781-4899-0021-0
[35] Wadler,编程概念和方法(1990)
[36] Wadler,第四届函数式编程语言与计算机体系结构研讨会(1989年)
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。