Alma-0: An imperative language that supports declarative programming

Citation
Kr. Apt et al., Alma-0: An imperative language that supports declarative programming, ACM T PROGR, 20(5), 1998, pp. 1014-1066
Citations number
41
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
ISSN journal
01640925 → ACNP
Volume
20
Issue
5
Year of publication
1998
Pages
1014 - 1066
Database
ISI
SICI code
0164-0925(199809)20:5<1014:AAILTS>2.0.ZU;2-C
Abstract
We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited n umber of features inspired by the logic programming paradigm. These additio ns encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presen ting solutions to a number of classical problems, including alpha-beta sear ch, STRIPS planning, knapsack, and Eight Queens. These solutions are substa ntially simpler than their counterparts written in the imperative or in the logic programming style and can be used for different purposes without any modification. We also discuss here the implementation of Alma-0 and an ope rational, executable, semantics of a large subset of the language.