COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring. |
Programming with MonadsAdd to your list(s) Download to your calendar using vCal
If you have a question about this talk, please contact Matthew Ireland. As we all know, functional programming is a different programming paradigm in which functions have no side effects. This kind of pure functions has many advantages such as allowing us to reason about the program in an equational way and use arbitrary evaluation order, (and one in particular with practical significance, lazy evaluation). However, side effects are common, if not essential, to real programs we use. Some functional programming languages simply adds in imperative features such as references and sequential execution. This broke the referential transparency and we lose the advantages aforementioned. Monads were invented by the purist to support side effects and at the same time maintain referential transparency. However, many people are confounded by the “inappropriately chosen name” (the inventor of Haskell admitted this) and the underlying relation to the so-called “category theory”. In this talk, we will explore some examples and derive Monads from first principles. We will see that they are nothing but another example of abstraction, the fundamental idea of computer science. In the second half of the talk, we will explore some more advanced usages of monads. This talk is part of the Churchill CompSci Talks series. This talk is included in these lists:Note that ex-directory lists are not shown. |
Other listsHEP web page aggregator Associative experiment Europe East and West: Film, History, and MourningOther talksThe Intimate Relation between Mechanics and Geometry Modeling and understanding of Quaternary climate cycles Reforming the Chinese Electricity System: A Review of the Market Reform Pilot in Guangdong Information Theory, Codes, and Compression Disaggregating goods |