English
Related papers

Related papers: Portability of Prolog programs: theory and case-st…

200 papers

The reuse of code fragments by copying and pasting is widely practiced in software development and results in code clones. Cloning is considered an anti-pattern as it negatively affects program correctness and increases maintenance efforts.…

Software Engineering · Computer Science 2018-06-26 Hannes Thaller , Rudolf Ramler , Josef Pichler , Alexander Egyed

A common feature of the Internet of Things (IoT) is the high heterogeneity, regarding network protocols, data formats, hardware and software platforms. Aiming to deal with such a degree of heterogeneity, several frameworks have applied the…

Software Engineering · Computer Science 2020-07-06 Bruno Costa , Paulo F. Pires , Flavia C. Delicato

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

While not yet in commercial existence, quantum computers have the ability to solve certain classes of problems that are not efficiently solvable on existing Turing Machine based (classical) computers. For quantum computers to be of use,…

Programming Languages · Computer Science 2009-11-13 Matt Purkeypile

The process of documenting and describing the world's languages is undergoing radical transformation with the rapid uptake of new digital technologies for capture, storage, annotation and dissemination. However, uncritical adoption of new…

Computation and Language · Computer Science 2007-05-23 Steven Bird , Gary Simons

The problem of synthesis of gate-level descriptions of digital circuits from behavioural specifications written in higher-level programming languages (hardware compilation) has been studied for a long time yet a definitive solution has not…

Programming Languages · Computer Science 2009-07-07 Dan R. Ghica

Open logic programs and open entailment have been recently proposed as an abstract framework for the verification of incomplete specifications based upon normal logic programs and the stable model semantics. There are obvious analogies…

Artificial Intelligence · Computer Science 2007-05-23 Piero A. Bonatti

Program logics are a powerful formal method in the context of program verification. Can we develop a counterpart of program logics in the context of language verification? This paper proposes language logics, which allow for statements of…

Programming Languages · Computer Science 2024-08-06 Matteo Cimini

A program that maintains key safety properties even when interacting with arbitrary untrusted code is said to enjoy \emph{robust safety}. Proving that a program written in a mainstream language is robustly safe is typically challenging…

Programming Languages · Computer Science 2022-05-16 Marco Patrignani , Sam Blackshear

Automated production systems (aPS) are highly customized systems that consist of hardware and software. Such aPS are controlled by a programmable logic controller (PLC), often in accordance with the IEC 61131-3 standard that divides system…

Software Engineering · Computer Science 2021-08-24 Kamil Rosiak , Alexander Schlie , Lukas Linsbauer , Birgit Vogel-Heuser , Ina Schaefer

Type-preserving (or typed) compilation uses typing derivations to certify correctness properties of compilation. We have designed and implemented a type-preserving compiler for a simply-typed dialect of Prolog we call T-Prolog. The crux of…

Programming Languages · Computer Science 2022-06-29 Rose Bohrer , Karl Crary

In order to achieve competitive performance, abstract machines for Prolog and related languages end up being large and intricate, and incorporate sophisticated optimizations, both at the design and at the implementation levels. At the same…

Programming Languages · Computer Science 2020-02-19 Jose F. Morales , Manuel Carro , Manuel Hermenegildo

This volume contains a selection of the papers presented at the XV Jornadas sobre Programaci\'on y Lenguajes (PROLE 2015), held at Santander, Spain, during September 15th-17th, 2015. Previous editions of the workshop were held in C\'adiz…

Programming Languages · Computer Science 2015-12-22 Marisa Navarro

Current researches on spoken language understanding (SLU) heavily are limited to a simple setting: the plain text-based SLU that takes the user utterance as input and generates its corresponding semantic frames (e.g., intent and slots).…

Computation and Language · Computer Science 2022-01-13 Xiao Xu , Libo Qin , Kaiji Chen , Guoxing Wu , Linlin Li , Wanxiang Che

The expression problem describes a fundamental tradeoff between two types of extensibility: extending a type with new operations, such as by pattern matching on an algebraic data type in functional programming, and extending a type with new…

Programming Languages · Computer Science 2025-11-21 Bohdan Liesnikov , David Binder , Tim Süberkrüb

This paper explores the extent to which regular expressions (regexes) are portable across programming languages. Many languages offer similar regex syntaxes, and it would be natural to assume that regexes can be ported across language…

Software Engineering · Computer Science 2021-05-11 James C. Davis , Louis G. Michael , Christy A. Coghlan , Francisco Servant , Dongyoon Lee

In programming, protocols are everywhere. Protocols describe the pattern of interaction (or communication) between software systems, for example, between a user-space program and the kernel or between a local application and an online…

Programming Languages · Computer Science 2022-11-08 Laura Bocchi , Dominic Orchard , A. Laura Voinea

Concurrency has been rapidly gaining importance in general-purpose computing, caused by the recent turn towards multicore processing architectures. As a result, an increasing number of developers have to learn to write concurrent programs,…

Programming Languages · Computer Science 2015-03-17 Sebastian Nanz , Faraz Torshizi , Michela Pedroni , Bertrand Meyer

Portability, performance, and productivity are three critical dimensions for evaluating a programming model or compiler infrastructure. Several modern programming models for computational science focus on performance and portability. On the…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-10-01 Brian Kelley , Sivasankaran Rajamanickam

Linear logic programming uses provability as the basis for computation. In the operational semantics based on provability, executing the additive-conjunctive goal $G_1 \& G_2$ from a program $P$ simply terminates with a success if both…

Logic in Computer Science · Computer Science 2015-07-02 Keehang Kwon , Mi-Young Park