Free Objects in Constraint-logic Object-oriented Programming

Dageförde Jan C., Kuchen Herbert

Working paper | Peer reviewed

Abstract

Constraint-logic object-oriented programming is useful in the integrated development of businesssoftware that occasionally solves constraint-logic problems. So far, work in constraint-logic object-oriented programming was limited to considering constraints that only involve logic variables ofprimitive types; in particular, boolean, integer, and floating-point numbers. However, the availabilityof object-oriented features calls for the option to use logic variables in lieu of objects as well. Therefore, support for reference-type logic variables (orfree objects) is required. With the presentwork, we add support for reference-type logic variables to a Java-based constraint-logic object-oriented language. Allowing free objects in statements and expressions results in novel interactionswith objects at runtime, for instance, non-deterministic execution of invocations on free objects(taking arbitrary class hierarchies and overriding into account). In order to achieve this, we alsopropose a dynamic type constraint that restricts the types of free objects at runtime

Details about the publication

Place of publicationMünster
Title of seriesWorking Papers, European Research Center for Information Systems (ISSN: 1614-7448)
Volume of series32
StatusPublished
Release year2020
Language in which the publication is writtenEnglish
Link to the full texthttps://www.ercis.org/sites/ercis/files/structure/network/research/ercis-working-papers/ercis_wp_32.pdf
KeywordsConstraint-logic object-oriented programming; reference-type logic variables; programming lan-guage implementation; runtime systems

Authors from the University of Münster

Dageförde, Jan
Practical Computer Science Group (PI)
Kuchen, Herbert
Practical Computer Science Group (PI)