LogicObjects : A Portable and Extensible Approach for Linguistic Symbiosis between an Object-Oriented and a Logic Programming Language

Castro Mejia, Sergio
(2013) International Conference on Logic Programming (ICLP 2013) – Doctoral Consortium (DC) — Location: Istanbul, Turkey (24.August.2013)

Files

2013-iclp-castro.pdf
  • Restricted Access
  • Adobe PDF
  • 133.42 KB

Details

Authors
  • Castro Mejia, SergioUCLouvain
    Author
Abstract
Logic languages are well suited for declaratively solving computational problems that require knowledge representation and reasoning. Object-oriented programming languages benefit from mature software ecosystems featuring rich libraries and developer tools. Several integration solutions exist that allow a software system to be decomposed into a combination of modules implemented in both a logic and an object-oriented language. Unfortunately, significative amounts of boilerplate code must still be written to accomplish the required interoperability. In addition, such approaches often are not amenable to custom context-dependent reification of objects in the logic world and custom mappings of arbitrary logic terms to objects in the object-oriented world. Furthermore, in the specific case of Prolog-Java integration, existing solutions are often compatible with only a single or a restricted set of Prolog engines and thus suffer from portability issues. To address these problems, we introduce a portable framework, relying on linguistic integration, for transparently and (semi-)automatically enabling communication between routines in these two worlds, as well as a simple mechanism for customising how native artefacts in one language should be reified in the other language. We validate our approach with case studies requiring a seamless integration of declarative programs in Prolog with libraries belonging to the Java ecosystem
Affiliations

Citations

Castro Mejia, S. (2013). LogicObjects : A Portable and Extensible Approach for Linguistic Symbiosis between an Object-Oriented and a Logic Programming Language. International Conference on Logic Programming (ICLP 2013) – Doctoral Consortium (DC), Istanbul, Turkey. https://hdl.handle.net/2078.5/198113