Partially-Static Data as Free Extension of Algebras
View / Open Files
Authors
Yallop, JD
Von Glehn, Tamara
Kammar, Ohad
Publication Date
2018-09Journal Title
Proceedings of the ACM on Programming Languages archive Volume 2 Issue ICFP, September 2018 Article No. 100
Conference Name
Proceedings of the ACM on Programming Languages
ISSN
2475-1421
Publisher
ACM
Number
article No. 100
Type
Conference Object
Metadata
Show full item recordCitation
Yallop, J., Von Glehn, T., & Kammar, O. (2018). Partially-Static Data as Free Extension of Algebras. Proceedings of the ACM on Programming Languages archive Volume 2 Issue ICFP, September 2018 Article No. 100, (article No. 100) https://doi.org/10.1145/3236795
Abstract
Partially-static data structures are a well-known technique for improving binding times. However, they are often defined in an ad-hoc manner, without a unifying framework to ensure full use of the equations associated with each operation. We present a foundational view of partially-static data structures as free extensions of algebras for suitable equational theories, i.e. the coproduct of an algebra and a free algebra in the category of algebras and their homomorphisms. By precalculating these free extensions, we construct a high-level library of partially-static data representations for common algebraic structures. We demonstrate our library with common use-cases from the literature: string and list manipulation, linear algebra, and numerical simplification.
Keywords
multi-stage compilation, metaprogramming, partial evaluation, partially-static data, universal algebra
Sponsorship
Supported by the European Research Council grant ‘events causality and symmetry Ð the next- generation semantics’; the Engineering and Physical Sciences Research Council grant EP/N007387/1 ‘Quantum computation as a programming language’, and a Balliol College Oxford Career Development Fellowship
Identifiers
External DOI: https://doi.org/10.1145/3236795
This record's URL: https://www.repository.cam.ac.uk/handle/1810/283191
Statistics
Total file downloads (since January 2020). For more information on metrics see the
IRUS guide.
Recommended or similar items
The current recommendation prototype on the Apollo Repository will be turned off on 03 February 2023. Although the pilot has been fruitful for both parties, the service provider IKVA is focusing on horizon scanning products and so the recommender service can no longer be supported. We recognise the importance of recommender services in supporting research discovery and are evaluating offerings from other service providers. If you would like to offer feedback on this decision please contact us on: support@repository.cam.ac.uk