The Implementation of Prolog
โ Scribed by Patrice Boizumault; Jamal Fattouh; Ara M. Djamboulian
- Publisher
- Princeton University Press
- Year
- 2014
- Tongue
- English
- Leaves
- 312
- Series
- Princeton Readings in Religions; 261
- Edition
- Course Book
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
A semantically well-defined programming language widely used in artificial intelligence, Prolog has greatly influenced other programming languages since its introduction in the late 1970s. A user may find Prolog deceptively easy, however, and there are a number of different implementations. In this book Patrice Boizumault draws from his extensive experience in Prolog implementation to describe for students of all levels the concepts, difficulties, and design limits of a Prolog system.
Boizumault introduces the specific problems posed by the implementation of Prolog, studies and compares different solutions--notably those of the schools of Marseilles and Edinburgh--and concludes with three examples of implementation. Major points of interest include identifying the important differences in implementing unification and resolution; presenting three features of Prolog II--infinite trees, dif, and freeze--that introduce constraints; thoroughly describing Warren's Abstract Machine (WAM); and detailing a Lisp imple-mentation of Prolog.
Originally published in 1993.
The Princeton Legacy Library uses the latest print-on-demand technology to again make available previously out-of-print books from the distinguished backlist of Princeton University Press. These editions preserve the original texts of these important books while presenting them in durable paperback and hardcover editions. The goal of the Princeton Legacy Library is to vastly increase access to the rich scholarly heritage found in the thousands of books published by Princeton University Press since its founding in 1905.
โฆ Table of Contents
CONTENTS
FOREWORD
ACKNOWLEDGMENTS
INTRODUCTION
Part I. Fundamental Principles of the Language
INTRODUCTION TO PART I.
CHAPTER 1. UNIFICATION
CHAPTER 2. RESOLUTION AND PROLOG CONTROL
CHAPTER 3. IMPROVING PROLOG CONTROL
Part II. Principles and Techniques of Implementation
INTRODUCTION TO PART II
CHAPTER 4. CONTROL AND STACK(S) MANAGEMENT
CHAPTER 5. REPRESENTATION OF TERMS
CHAPTER 6. DETERMINISTIC CALL RETURNS
CHAPTER 7. LAST-CALL OPTIMIZATION
CHAPTER 8. CLAUSE INDEXING
CHAPTER 9. COMPILATION OF PROLOG
CHAPTER 10. THE DIF AND FREEZE PREDICATES OF PROLOG-II
Part III. Implementations
INTRODUCTION TO PART III
Presentation Outline
CHAPTER 11. MINI-CPROLOG
CHAPTER 12. MINI-WAM
CHAPTER 13. MINI-PROLOG-II
CHAPTER 14. BUILT-IN PREDICATES
CONCLUSION
APPENDIX A. MINI-CPROLOG
APPENDIX B. MINI-WAM
APPENDIX C. MINI-PROLOG-II
APPENDIX D. COMMON PART
BIBLIOGRAPHY
๐ SIMILAR VOLUMES
Implementations of Distributed Prolog Edited by Peter Kacsuk, KFKI Research Institute for Measurement and Computing Techniques, Hungary and Michael J. Wise, University of Sydney, Australia Foreword by Doug De Groot, Texas Instruments, USA Although much needed, standard and commercially
Approaches the subject by applying the format used in successful language courses. Offers a comprehensive exhibition of Prolog programming techniques in four stages--declarative, procedural, advanced and meta-programming. Presents simple and efficient implementation of logical negation and quantifie
The purpose of this text is twofold. Firstly, it presents a firm background for prolog programming and the fundamental techniques of problem-solving using prolog. The book's easy to follow tutorial style features many fully-solved exercises followed by similar problems for student practice. Secondly