In the past it was appropriate for students to be provided in the lectures with a firm theoretical foundation and then be given the opportunity to practice the material in their lab classes and tutorials. However, current experience suggests that the teaching of computer languages is now best pursued by carefully interweaving theory with practical examples and hands-on student activities. The book is intended to support such an approach; indeed, the core material for the book has grown out of lecture handouts. In addition to this material, an extra section will be added on Prolog for Natural Language Processing. At 29 UK universities that teach artificial intelligence, 86% of them taught Prolog either at undergraduate or master’s level as part of the course. The language is inference-oriented rather than object-oriented. |