Kleisli Arrows of Outrageous Fortune
- ๐ค Speaker: Conor McBride, University of Strathclyde
- ๐ Date & Time: Friday 11 February 2011, 14:00 - 15:00
- ๐ Venue: Room FW11, Computer Laboratory, William Gates Building
Abstract
When we program to interact with a turbulent world, we are to some extent at its mercy. To achieve safety, we must ensure that programs act in accordance with what is known about the state of the world, as determined dynamically. Is there any hope to enforce safety policies for dynamic interaction by static typing? This talk answers with a cautious `yes’.
Monads provide structure and a type discipline for effectful programming, mapping value types to computation types. If we index our types by data approximating the `state of the world’, we refine our values to witnesses for some condition of the world. Ordinary monads for indexed types give a discipline for effectful programming contingent on state, modelling the whims of fortune in way that Atkey’s indexed monads for ordinary types do not. Arrows in the corresponding Kleisli category represent computations which a reach a given postcondition from a given precondition: their types are just specifications in a Hoare logic!
By way of an elementary introduction to this approach, I present the example of a monad for interacting with a file handle which is either `open’ or `closed’, constructed from a command interface specfied with Hoare-style pre- and postconditions. An attempt to open a file results in a state which is statically unpredictable but dynamically detectable. Well typed programs behave accordingly in either case. Haskell’s dependent type system, as exposed by the Strathclyde Haskell Enhancement preprocessor, provides a suitable basis for this simple experiment.
Series This talk is part of the Logic and Semantics Seminar (Computer Laboratory) series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge talks
- Computing and Mathematics
- Department of Computer Science and Technology talks and seminars
- Interested Talks
- Logic and Semantics Seminar (Computer Laboratory)
- Martin's interesting talks
- Room FW11, Computer Laboratory, William Gates Building
- School of Technology
- tcw57โs list
- Trust & Technology Initiative - interesting events
- yk373's list
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)


Friday 11 February 2011, 14:00-15:00