Functional logic languages combine the operational principles of the most important declarative programming paradigms, namely functional and logic programming. Inductively sequent...
The existing call-by-need λ calculi describe lazy evaluation via equational logics. A programmer can use these logics to safely ascertain whether one term is behaviorally equivale...
We propose lazy propagation as a technique for flow- and context-sensitive interprocedural analysis of programs with objects and first-class functions where transfer functions ma...
Common subexpression elimination is a well-known compiler optimisation that saves time by avoiding the repetition of the same computation. In lazy functional languages, referential...
Abstract. Using higher-order functions is standard practice in functional programming, but most functional logic programming languages that have been described in the literature la...