Lowering the learning curve for declarative programming: a Python API for the IDP system
Joost Vennekens

TL;DR
This paper introduces a Python API for the IDP system, making declarative programming more accessible by integrating it into a widely-used language, thereby reducing the learning curve and easing adoption.
Contribution
The paper presents a novel Python API that seamlessly integrates IDP's logical reasoning capabilities into Python, enabling easier use without learning new syntax.
Findings
API enables Python programmers to access IDP's features easily
Integration minimizes code changes when adding/removing IDP
Facilitates adoption of declarative programming in Python
Abstract
Programmers may be hesitant to use declarative systems, because of the associated learning curve. In this paper, we present an API that integrates the IDP Knowledge Base system into the Python programming language. IDP is a state-of-the-art logical system, which uses SAT, SMT, Logic Programming and Answer Set Programming technology. Python is currently one of the most widely used (teaching) languages for programming. The first goal of our API is to allow a Python programmer to use the declarative power of IDP, without needing to learn any new syntax or semantics. The second goal is allow IDP to be added to/removed from an existing code base with minimal changes.
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.
