Customisable Handling of Java References in Prolog Programs
Sergio Castro, Kim Mens, Paulo Moura

TL;DR
This paper introduces a comprehensive approach for representing Java object references in Prolog, enhancing portability and compatibility across multiple Prolog engines for improved Java-Prolog integration.
Contribution
It generalizes reference representation patterns, addressing multiple dimensions of inter-language references, and extends an open-source library to support these features across various Prolog engines.
Findings
Extended JPC library with new reference handling features
Supported three open-source Prolog engines (SWI, YAP, XSB)
Validated approach through practical implementation and testing
Abstract
Integration techniques for combining programs written in distinct language paradigms facilitate the implementation of specialised modules in the best language for their task. In the case of Java-Prolog integration, a known problem is the proper representation of references to Java objects on the Prolog side. To solve it adequately, multiple dimensions should be considered, including reference representation, opacity of the representation, identity preservation, reference life span, and scope of the inter-language conversion policies. This paper presents an approach that addresses all these dimensions, generalising and building on existing representation patterns of foreign references in Prolog, and taking inspiration from similar inter-language representation techniques found in other domains. Our approach maximises portability by making few assumptions about the Prolog engine…
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.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Advanced Software Engineering Methodologies
