TY - GEN
T1 - Code generation via higher-order rewrite systems
AU - Haftmann, Florian
AU - Nipkow, Tobias
PY - 2010
Y1 - 2010
N2 - We present the meta-theory behind the code generation facilities of Isabelle/HOL. To bridge the gap between the source (higherorder logic with type classes) and the many possible targets (functional programming languages), we introduce an intermediate language, Mini- Haskell. To relate the source and the intermediate language, both are given a semantics in terms of higher-order rewrite systems (HRSs). In a second step, type classes are removed from Mini-Haskell programs by means of a dictionary translation; we prove the correctness of this step. Building on equational logic also directly supports a simple but powerful algorithm and data refinement concept.
AB - We present the meta-theory behind the code generation facilities of Isabelle/HOL. To bridge the gap between the source (higherorder logic with type classes) and the many possible targets (functional programming languages), we introduce an intermediate language, Mini- Haskell. To relate the source and the intermediate language, both are given a semantics in terms of higher-order rewrite systems (HRSs). In a second step, type classes are removed from Mini-Haskell programs by means of a dictionary translation; we prove the correctness of this step. Building on equational logic also directly supports a simple but powerful algorithm and data refinement concept.
UR - http://www.scopus.com/inward/record.url?scp=78651250973&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-12251-4_9
DO - 10.1007/978-3-642-12251-4_9
M3 - Conference contribution
AN - SCOPUS:78651250973
SN - 3642122507
SN - 9783642122507
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 103
EP - 117
BT - Functional and Logic Programming - 10th International Symposium, FLOPS 2010, Proceedings
T2 - 10th International Symposium on Functional and Logic Programming, FLOPS 2010
Y2 - 19 April 2010 through 21 April 2010
ER -