Many, many of the legendary programmers know many programming languages. What they know from one language helps them write better code in another one. But itβs not really the language that matters: adding knowledge of C# to your knowledge of Java doesnβt make you much better. The languages are too s
Clause and Effect: Prolog Programming for the Working Programmer
β Scribed by Dr. William F. Clocksin (auth.)
- Publisher
- Springer-Verlag Berlin Heidelberg
- Year
- 1997
- Tongue
- English
- Leaves
- 148
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
This book is for people who have done some programming, either in Prolog or in a language other than Prolog, and who can find their way around a reference manual. The emphasis of this book is on a simplified and disciplined methodology for discerning the mathematical structures related to a problem, and then turning these structures into Prolog programs. This book is therefore not concerned about the particular features of the language nor about Prolog programming skills or techniques in general. A relatively pure subset of Prolog is used, which includes the 'cut', but no input/output, no assert/retract, no syntactic extensions such as ifΒ then-else and grammar rules, and hardly any built-in predicates apart from arithmetic operations. I trust that practitioners of Prolog programΒ ming who have a particular interest in the finer details of syntactic style and language features will understand my purposes in not discussing these matters. The presentation, which I believe is novel for a Prolog programming text, is in terms of an outline of basic concepts interleaved with worksheets. The idea is that worksheets are rather like musical exercises. Carefully graduated in scope, each worksheet introduces only a limited number of new ideas, and gives some guidance for practising them. The principles introduced in the worksheets are then applied to extended examples in the form of case studies.
β¦ Table of Contents
Front Matter....Pages i-ix
Getting Started....Pages 1-16
Data Structures....Pages 17-25
Mapping....Pages 27-39
Choice and Commitment....Pages 41-53
Difference Structures....Pages 55-67
Case Study: Term Rewriting....Pages 69-74
Case Study: Manipulation of Combinational Circuits....Pages 75-84
Case Study: Manipulation of Clocked Sequential Circuits....Pages 85-92
Case Study: A Compiler for Three Model Computers....Pages 93-114
Case Study: The Fast Fourier Transform in Prolog....Pages 115-126
Case Study: Higher-Order Functional Programming....Pages 127-140
Back Matter....Pages 141-143
β¦ Subjects
Programming Techniques; Software Engineering; Programming Languages, Compilers, Interpreters; Artificial Intelligence (incl. Robotics)
π SIMILAR VOLUMES
Take advantage of the growing trend in functional programming.C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to func
Take advantage of the growing trend in functional programming.C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to func
Take advantage of the growing trend in functional programming.C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to func
Take advantage of the growing trend in functional programming.C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to func
Take advantage of the growing trend in functional programming.C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to func