Declarative Programming with Intensional Sets in Java Using JSetL

02/26/2020
by   Maximiliano Cristiá, et al.
0

Intensional sets are sets given by a property rather than by enumerating their elements. In previous work, we have proposed a decision procedure for a first-order logic language which provides Restricted Intensional Sets (RIS), i.e., a sub-class of intensional sets that are guaranteed to denote finite—though unbounded—sets. In this paper we show how RIS can be exploited as a convenient programming tool also in a conventional setting, namely, the imperative O-O language Java. We do this by considering a Java library, called JSetL, that integrates the notions of logical variable, (set) unification and constraints that are typical of constraint logic programming languages into the Java language. We show how JSetL is naturally extended to accommodate for RIS and RIS constraints, and how this extension can be exploited, on the one hand, to support a more declarative style of programming and, on the other hand, to effectively enhance the expressive power of the constraint language provided by the library.

READ FULL TEXT
research
11/12/2019

Aplib: Tactical Programming of Intelligent Agents

This paper presents aplib, a Java library for programming intelligent ag...
research
02/14/2018

pyfml - a textual language for feature modeling

The Feature model is a typical approach to capture variability in a soft...
research
03/21/2011

BoolVar/PB v1.0, a java library for translating pseudo-Boolean constraints into CNF formulae

BoolVar/PB is an open source java library dedicated to the translation o...
research
10/21/2019

Automated Reasoning with Restricted Intensional Sets

Intensional sets, i.e., sets given by a property rather than by enumerat...
research
08/24/2018

Reference Type Logic Variables in Constraint-logic Object-oriented Programming

Constraint-logic object-oriented programming, for example using Muli, fa...
research
07/10/2018

A modelling language for the effective design of Java annotations

This paper describes a new modelling language for the effective design o...
research
07/30/2021

The bitwise operations in relation to the concept of set

We contemplate this article to help the teachers of programming in his a...

Please sign up or login with your details

Forgot password? Click here to reset