Free Objects in Constraint-logic Object-oriented Programming

Dageförde Jan C., Kuchen Herbert


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

Keywords
Constraint-logic object-oriented programming; reference-type logic variables; programming lan-guage implementation; runtime systems



Publication type
Working paper

Peer reviewed
No

Publication status
Published

Year
2020

Journal
Working Papers of the European Research Center for Information Systems

Volume
32

Title of series
Working Papers, European Research Center for Information Systems

Place
Münster

Language
English

ISSN
1614-7448

Full text