Binding-time analysis is a crucial component of an ofine partial evaluator. The accuracy of the binding-time information that it produces determines the degree of specialization o...
We present a framework for applying memoization selectively. The framework provides programmer control over equality, space usage, and identification of precise dependences so tha...
We introduce a notion of guarded recursive (g.r.) datatype constructors, generalizing the notion of recursive datatypes in functional programming languages such as ML and Haskell....
Graphics processing units (GPUs) provide both memory bandwidth and arithmetic performance far greater than that available on CPUs but, because of their Single-Instruction-Multiple...
User-defined data types, pattern-matching, and recursion are ubiquitous features of Haskell programs. Sometimes a function is called with arguments that are statically known to be...