We describe an editor geared to recursive Prolog procedures. It is similar to the structure editors built for many programming languages, except that instead of just ensuring the correctness of the syntax of the procedures built by the editor, the editor also ensures the correct use of recursion. By correct here we mean that the recursive procedure is guaranteed to terminate and to be well-defined. Within these constraints we have tried to ensure that the range of procedures that can be built is as complete as possible.
Unable to display preview. Download preview PDF.
- Brna, P., Bundy, A., Pain, H. and Lynch, L. (1987). Programming tools for Prolog environments. In J. Halla, and C. Mellish (Eds.), Advances in Artificial Intelligence, pp. 251–26. Society for the Study of Artificial Intelligence and Simulation of Behaviour. Chichester: John Wiley and Sons. Previously, Research Paper No 302, Department of Artificial Intellignece, University of Edinburgh.Google Scholar
- Grosse, G. (1989). Towards a recursive techniques editor. Unpublished MSc thesis, Dept of Computer Science, Heriot-Watt University.Google Scholar
- Huet, G. and Oppen, D. C. (1980). Equations and rewrite rules: a survey. In R. Book (Ed.), Formal languages: perspectives and open problems. New York: Academic Press. Presented at the conference on formal language theory, Santa Barbara, 1979. Available from SRI International as Technical Report CSL-lll.Google Scholar
- Kahney, H. (1982). An in-depth study of the cognitive bchaviour of novice programmers. Unpublished PhD thesis. Human Cognition Research Laboratory, The Open University, Milton Keynes.Google Scholar
- Péter, R. (1967). Recursive functions. New York: Academic Press. Translated by Istvan Foeldes.Google Scholar
- Teitelman, W. and Masinter, L. (1981). The INTERLISP programming environment. IEEE Computer, 25–33.Google Scholar
- Walther, C. (1988). Argument-bounded algorithms as a basis for automated termination proofs. In E. Lusk and R. Overbeek (Eds.), 9th Conference on Automated Deduction, pp. 602–621. Berlin: Springer-Verlag.Google Scholar