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...
Writing boilerplate code is a royal pain. Generic programming promises to alleviate this pain by allowing the programmer to write a generic "recipe" for boilerplate code...
This paper presents an automatic deforestation system, stream fusion, based on equational transformations, that fuses a wider range of functions than existing short-cut fusion sys...
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 ...
We describe the design and implementation of a program generator that can produce extensions of Fortran that are specialized to support the programming of particular applications. ...