Conference
Multi-stage Programming with Functors and Monads: Eliminating Abstraction Overhead from Generic Code
Abstract
With Gaussian Elimination as a representative family of numerical and symbolic algorithms, we use multi-stage programming, monads and Ocaml’s advanced module system to demonstrate the complete elimination of the abstraction overhead while avoiding any inspection of the generated code. We parameterize our Gaussian Elimination code to a great extent (over domain, matrix representations, determinant tracking, pivoting policies, result types, etc) …
Authors
Carette J; Kiselyov O
Series
Lecture Notes in Computer Science
Volume
3676
Pagination
pp. 256-274
Publisher
Springer Nature
Publication Date
2005
DOI
10.1007/11561347_18
Conference proceedings
Lecture Notes in Computer Science
ISSN
0302-9743