Alma-O
- 1 September 1998
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 20 (5) , 1014-1066
- https://doi.org/10.1145/293677.293679
Abstract
We describe here an implemented small programming language, called Alma-O, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-O by presenting solutions to a number of classical problems, including α-β search, STRIPS planning, knapsack, and Eight Queens. These solutions are substantially 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-O and an operational, executable, semantics of a large subset of the language.Keywords
This publication has 11 references indexed in Scilit:
- Spill — A logic language for writing testable requirements specificationsScience of Computer Programming, 1997
- Search and imperative programmingPublished by Association for Computing Machinery (ACM) ,1997
- Arrays, bounded quantification and iteration in logic and constraint logic programmingScience of Computer Programming, 1996
- Logic programming and negation: A surveyThe Journal of Logic Programming, 1994
- A meta-environment for generating programming environmentsACM Transactions on Software Engineering and Methodology, 1993
- Dynamic predicate logicLinguistics and Philosophy, 1991
- An introduction to Prolog IIICommunications of the ACM, 1990
- Non-Deterministic AlgorithmsACM Computing Surveys, 1979
- Full abstraction for a simple parallel programming languagePublished by Springer Nature ,1979
- Strips: A new approach to the application of theorem proving to problem solvingArtificial Intelligence, 1971