Polymorphic Bottom-Up Weighted Relational Programming
Dmitri Volkov

TL;DR
This paper introduces a novel approach for implementing polymorphism in bottom-up relational programming languages without monomorphization, using a new compilation method for polymorphic semiringKanren programs.
Contribution
It presents semiringKanren, extends it with polymorphism, and proves a new compilation method's correctness, advancing relational language implementation techniques.
Findings
Developed semiringKanren, a bottom-up weighted relational language.
Extended semiringKanren to support polymorphism.
Proved the correctness of the new compilation method.
Abstract
This work presents a new approach for implementing polymorphism for bottom-up relational languages, without monomorphization. We begin by introducing semiringKanren, a bottom-up weighted relational programming language. We extend this base language to support polymorphism. We describe a new method to compile polymorphic semiringKanren programs into non-polymorphic ones, based on equality patterns and large-enough instances of polymorphic relations. We prove the correctness of this method. Finally, we consider existing work and suggest directions for future research.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
