It is common for compilers to derive the calling convention of a function from its type. Doing so is simple and modular but misses many optimisation opportunities, particularly in...
Cyclic data structures can be tricky to create and manipulate in declarative programming languages. In a declarative setting, a natural way to view cyclic structures is as denotin...
We describe a new automatic static analysis for determining upper-bound functions on the use of quantitative resources for strict, higher-order, polymorphic, recursive programs de...
Steffen Jost, Hans-Wolfgang Loidl, Kevin Hammond, ...
This paper presents a compiler which produces machine code from functions defined in the logic of a theorem prover, and at the same time proves that the generated code executes the...
Magnus O. Myreen, Konrad Slind, Michael J. C. Gord...
Datatype-generic programming involves parametrization by the shape of data, in the form of type constructors such as `list of'. Most approaches to datatype-generic programmin...