A bidirectional transformation consists of a function get that takes a source (document or value) to a view and a function put that takes an updated view and the original source b...
Mitchell's notion of representation independence is a particularly useful application of Reynolds' relational parametricity -- two different implementations of an abstra...
CCured is a program transformation system that adds memory safety guarantees to C programs by verifying statically that memory errors cannot occur and by inserting run-time checks...
Jeremy Condit, Matthew Harren, Scott McPeak, Georg...
Deforestation optimises a functional program by transforming it into another one that does not create certain intermediate data structures. Short cut deforestation is a deforestat...
We define a simple collection of operations for creating and manipulating record structures, where records are intended as finite associations of values to labels. A second-order ...