In functional programming, intermediate data structures are often used to “glue’) together small programs. Deforestation is a program transformation to remove these intermedia...
A number of useful optimisations are enabled if we can determine when a value is accessed at most once. We extend the Hindley-Milner type system with uses, yielding a typeinferenc...
Lenient languages, such as Id90, have been touted as among the best functional languages for massively parallel machines AHN88]. Lenient evaluation combines non-strict semantics w...
This paper discusses the derivation of functional programs for grammar analysis problems, such as the Empty problem and the Reachable problem. Grammar analysis problems can be div...
Game semantics is an unusual denotational semantics in that it captures the intensional (or algorithmic) and dynamical aspects of the computation. This makes it an ideal semantica...