Abstract
Procedural and declarative are often seen as two irreconcilable extremes. In this paper, we show how a reflective rule system can move between declarative and procedural interpretations with relative ease. We outline a new way to interpret these shifts, one which is more principled than the usual dichotomy. We also show that some relatively small changes in rule structure allow different dynamics to be assigned to rule components and to entire rules. This serves not only to show that description plays a critical role in reflection, but also to show that different kinds of dynamics can be supplied when required. Alternative dynamics can be provided by rule sets encoded in the same representation. The new structure can be used in exactly the same way as the ELEKTRA interpreter that is the main focus of this paper’s attention.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Backus, J.: Can programming be liberated from its von Neumann style? A functional style and its algebra of programs. Communications of the ACM 21(8), 613–641 (1978)
Craig, I.D.: A Reflective Production System. Kybernetes 23(3), 20–35 (1994)
Craig, I.D.: Rule Interpreters in ELEKTRA. Kybernetes 24(3), 41–53 (1995)
Davis, R.: Meta-rules: Reasoning about Control. Artificial Intelligence Journal 15, 179–222 (1980)
Forgy, C.L.: The OPS5 User’s Manual, Technical Report No. TR CMU-CS-81-135, Department of Computer Science, Carnegie-Mellon University (1981)
Smith, B.C.: Reflection and Semantics in a Procedural Language, Ph. D. dissertation, Computer Science Dept., MIT, Report No. MIT/LCS/TR-272 (1982)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Craig, I.D. (1999). Converting Declarative into Procedural (and Vice Versa). In: Padget, J.A. (eds) Collaboration between Human and Artificial Societies. Lecture Notes in Computer Science(), vol 1624. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10703260_8
Download citation
DOI: https://doi.org/10.1007/10703260_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66930-2
Online ISBN: 978-3-540-46624-6
eBook Packages: Springer Book Archive