Monads as an organizing principle for programming and semantics are notoriously difficult to grasp, yet they are a central and powerraction in Haskell. This paper introduces a do...
Pericles S. Kariotis, Adam M. Procter, William L. ...
We present Haskell libraries that statically ensure the safe use of resources such as file handles. We statically prevent accessing an already closed handle or forgetting to clos...
The “zipper” is a well known design pattern for providing a cursorlike interface to a data structure. However, the classic treatise by Huet only scratches the surface of some ...
Protecting confidentiality of data has become increasingly important for computing systems. Information-flow techniques have been developed over the years to achieve that purpos...
Eight years ago, functional dependencies, a concept from the theory of relational databases, were proposed as a mechanism for avoiding common problems with multiple parameter type...
The quality of a programming language itself is only one component in the ability of application writers to get the job done. Programming languages can succeed or fail based on th...