A Practical Study of Control in Objected-Oriented--Functional--Logic Programming with Paisley
Baltasar Tranc\'on y Widemann (Ilmenau University of Technology, DE),, Markus Lepper (semantics GmbH, DE)

TL;DR
This paper introduces an extension to the Paisley framework that adds pattern-based control flow using Java's functional features, demonstrating its effectiveness in refactoring legacy code for better clarity and maintainability.
Contribution
It presents a novel pattern-based control flow extension to Paisley, leveraging Java's functional interfaces and lambdas for explicit continuation-passing style control.
Findings
Effective refactoring of legacy code using Paisley
Improved code clarity, separation of concerns, and debugging
Viable incremental integration into existing projects
Abstract
Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to the Java platform, without constraining the underlying object-oriented semantics. Here we present an extension to the Paisley framework that adds pattern-based control flow. It exploits recent additions to the Java language, namely functional interfaces and lambda expressions, for an explicit and transparent continuation-passing style approach to control. We evaluate the practical impact of the novel features on a real-world case study that reengineers a third-party open-source project to use Paisley in place of conventional object-oriented data query idioms. We find the approach viable for incremental refactoring of legacy code, with significant…
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.
