skip to main content
10.1145/800225.806839acmconferencesArticle/Chapter ViewAbstractPublication PagesslipeConference Proceedingsconference-collections
Article
Free Access

An environment for logic programming

Authors Info & Claims
Published:25 June 1985Publication History

ABSTRACT

We describe a programming environment for Prolog, a common logic programming language. The services offered by our system assist a Prolog user in the tasks of composing, editing, and storing logic (rule-based) programs, as well as in the control of their execution for debugging purposes.

In order to facilitate effective debugging of Prolog programs, we propose a new model of computation that can handle both pure Prolog and impure (side-effect causing) Prolog operations quite gracefully. This model employs two stacks representing the state of a computation with respect to the two major activities of Prolog execution: recursion and backtracking. This representation, in addition to being quite clear and intuitive, is easy to display on a terminal's screen and can be further processed.

We also describe a Prolog oriented editor with which the user may easily create and update Prolog source programs and, further, inspect states of computation as generated by the debugger.

References

  1. 1.Alberga, C. N., A. L. Brown, G. B. Leeman, Jr., M. Mikelsons, M. N. Wegman, "A Program Development Tool", IBM Journal of Research and Development, 28, 1 (January 1984), pp. 60-73. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.Allison, Lloyd, "Syntax Directed Program Editing", Software-Practice and Experience, 13, (1983), pp. 453-465.Google ScholarGoogle ScholarCross RefCross Ref
  3. 3.Clocksin, W. F., and C. S. Mellish, Programming in Prolog, Springer Verlag, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.Delisle, N. M., D. E. Menikosy, and M. D. Schwartz, "Viewing a Programming Environment as a Single Tool", Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, Peter Henderson, Ed., Pittsburgh. PA, April 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.Francez, N., B. Klebanski, and A. Pnueli, "Backtracking in Recursive Computations", Acta Informatica, 8 (1977), pp. 125-144.Google ScholarGoogle ScholarCross RefCross Ref
  6. 6.Hammond, P., and M. Sergot, APES: Augmented Prolog for Expert Systems, Reference Manual (micro-Prolog version), July 1984.Google ScholarGoogle Scholar
  7. 7.Horgan, J. R., and D. J. Moore, "Techniques for Improving Language Based Editors", Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, Peter Henderson, Ed., Pittsburgh, PA, April 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.McCabe, F. G., K. L. Clark, and B. D. Steel, micro-Prolog 3.1 Programmer's Reference Manual (CP/M and MSDOS Versions), Fourth Edition, March 1984.Google ScholarGoogle Scholar
  9. 9.Pereira, L. M., and A. Porto, "Selective Backtracking", in Logic Programming (K. L. Clark and S.-A. Tarnlund, editors), Academic Press, New York, 1982, pp. 107-114.Google ScholarGoogle Scholar
  10. 10.Teitelbaum, T., and T. Reps, "A Syntax-directed Programming Environment", Communications of the ACM, 24, 9 (September 1981), pp. 563-573. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.Weinreb, D., and D. Moon, Lisp Machine Manual (third edition), MIT AI Laboratory, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.Zelkovitz, M. V., "A Small Contribution to Editing with a Syntax Directed Editor", Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, Peter Henderson, Ed., Pittsburgh, PA, April 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An environment for logic programming

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            SLIPE '85: Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
            June 1985
            257 pages
            ISBN:0897911652
            DOI:10.1145/800225

            Copyright © 1985 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 25 June 1985

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • Article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader