Introduction to logic programming
Introduction to logic programming
Readings in artificial intelligence
Readings in artificial intelligence
Prolog for programmers
The Semantics of Predicate Logic as a Programming Language
Journal of the ACM (JACM)
Contributions to the Theory of Logic Programming
Journal of the ACM (JACM)
A Computer Model of Skill Acquisition
A Computer Model of Skill Acquisition
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Oriented Equational Clauses as a Programming Language
Proceedings of the 11th Colloquium on Automata, Languages and Programming
Systems programming in concurrent prolog
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
DrScheme: a programming environment for Scheme
Journal of Functional Programming
Hi-index | 0.00 |
It has been claimed that logic programming offers outstanding possibilities for new concepts in programming environments. But with the exceptions of the pioneering work of Shapiro on algorithmic debugging, Pereira's rational debugging and early work on expert systems from Imperial College, there has been little progress reported in the field of logic programming environments. This summary describes our current work on a generic software engineering shell for logic programming. We use reflection and the amalgamation of meta-level language with the object level to express and support the incremental character of specifying/programming. An important facet of the shell is that we formalize some aspects of programming methodology and provide heuristics for avoiding errors. These heuristics formalize what experienced programmers may already know. The shell bears similarities to an expert system since it has explanation mechanisms and provides programming-knowledge acquisition. Currently, it supports single user Prolog programming and runs in C-Prolog. The shell is generic in that it provides support for activities ranging from artificial intelligence programming to formal specification development. This research has been supported in part by the IBM Young Faculty Development Award and in part by the NSF grant # MCS-84-05079.