AbstractWe work through a sequence of evolution scenarios for language-based functionality implemented as rule-based programs. We identify and illustrate different dimensions along which such functionality can evolve, including the following: (i) coding style; (ii) coding details; (iii) data model; (iv) crosscutting concerns; and (v) patches.We focus at language interpreters as examples of language-based functionality, but similar scenarios exist for type checkers, static analyses, program transformations, and other sorts of language-based functionality. We opt for Prolog as the rule-based programming language used for the implementation of language-based functionality. We employ the Prolog-based Rule Evolution Kit (REK) for the operational...
Programming languages are engineered languages that allow to instruct a machine and share algorithmi...
AbstractWe describe a Prolog-based approach to the development of language processors (such as prepr...
Exploratory programming is a software development style in which code is a medium for prototyping id...
AbstractWe are interested in evolution scenarios for language-based functionality. We identify diffe...
AbstractThe term rule-based program is meant to include definite clause programs, SOS specifications...
The term rule-based program is meant to include definite clause programs, SOS specifications, attrib...
Language-based tools involve some (ad-hoc) elements of a language's intended (say, formal) sema...
Abstract. Programming, i.e., the act of creating a runnable artifact applicable to multiple inputs/t...
Many frameworks have been proposed for deriving specific runtime properties, but there is still a la...
To appearInternational audienceA range of methodologies and techniques are available to guide the de...
To help encourage the wide use of a variety of logic-based languages, we advocate the identification...
Abstract: Imperative programming languages (such as Java) are the most widespread programming langua...
AbstractIn model-driven engineering, evolution is inevitable over the course of the complete life cy...
Program can be viewed as a sequence of statements that are aimed to produce some result. The executi...
International audienceExploratory programming is a software development style in which code is a med...
Programming languages are engineered languages that allow to instruct a machine and share algorithmi...
AbstractWe describe a Prolog-based approach to the development of language processors (such as prepr...
Exploratory programming is a software development style in which code is a medium for prototyping id...
AbstractWe are interested in evolution scenarios for language-based functionality. We identify diffe...
AbstractThe term rule-based program is meant to include definite clause programs, SOS specifications...
The term rule-based program is meant to include definite clause programs, SOS specifications, attrib...
Language-based tools involve some (ad-hoc) elements of a language's intended (say, formal) sema...
Abstract. Programming, i.e., the act of creating a runnable artifact applicable to multiple inputs/t...
Many frameworks have been proposed for deriving specific runtime properties, but there is still a la...
To appearInternational audienceA range of methodologies and techniques are available to guide the de...
To help encourage the wide use of a variety of logic-based languages, we advocate the identification...
Abstract: Imperative programming languages (such as Java) are the most widespread programming langua...
AbstractIn model-driven engineering, evolution is inevitable over the course of the complete life cy...
Program can be viewed as a sequence of statements that are aimed to produce some result. The executi...
International audienceExploratory programming is a software development style in which code is a med...
Programming languages are engineered languages that allow to instruct a machine and share algorithmi...
AbstractWe describe a Prolog-based approach to the development of language processors (such as prepr...
Exploratory programming is a software development style in which code is a medium for prototyping id...