Monads and Effects

Monads and Effects
复制标题

单子和效应

DOI:
--
复制
发表时间:
2000
期刊:
APPSEM
影响因子:
--
通讯作者:
E. Moggi
E. Moggi
中科院分区:
--
文献类型:
--
作者:
Nick Benton;John Hughes;E. Moggi

文献摘要

被引文献

相似文献

语言设计中的紧张一方面是简单的语义,另一方面是副作用、异常处理等的丰富可能性。单体的引入朝着协调这些替代方案迈出了一大步。它们最初是由Moggi提出的一种构建语义描述的方法,后来被Wadler用来构建Haskell程序。Monad已经被用来解决Haskell长期存在的问题,如添加指针和赋值、跨语言工作和异常处理,而不会影响其纯函数语义。本课程介绍单调、效果,并举例说明它们在编程(Haskell)和编译(MLJ)中的应用。本课程介绍了单音和相关范畴概念的类型化元语言,然后描述了如何通过引入效果来进一步提炼它们。
A tension in language design has been between simple semantics on the one hand, and rich possibilities for side-effects, exception handling and so on on the other. The introduction of monads has made a large step towards reconciling these alternatives. First proposed by Moggi as a way of structuring semantic descriptions, they were adopted by Wadler to structure Haskell programs. Monads have been used to solve long-standing problems such as adding pointers and assignment, inter-language working, and exception handling to Haskell, without compromising its purely functional semantics. The course introduces monads, effects, and exemplifies their applications in programming (Haskell) and in compilation (MLj). The course presents typed metalanguages for monads and related categorical notions, and then describes how they can be further refined by introducing effects.