An environment for logic programming

  • Authors:
  • Nissim Francez;Shalom Goldenberg;Ron Y. Pinter;Michael Tiomkin;Shalom Tsur

  • Affiliations:
  • Computer Science Department, Technion, Haifa, Israel;IBM Israel Scientific Center, Technion City, Haifa 32 000, ISRAEL;IBM Israel Scientific Center, Technion City, Haifa 32 000, ISRAEL;IBM Israel Scientific Center, Technion City, Haifa 32 000, ISRAEL;MCC, 9430 Research Blvd., Austin, TX

  • Venue:
  • SLIPE '85 Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
  • Year:
  • 1985

Quantified Score

Hi-index 0.00

Visualization

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.