Tibor Tibor
Faculty of Informatics, Eötvös Loránd Univ., Budapest, Hungary
Download articlePublished in: Proceedings of the First International Workshop on Teaching Logic Programming: TeachLP 2004
Linköping Electronic Conference Proceedings 12:3, p. 35-42
Published: 2004-10-04
ISBN:
ISSN: 1650-3686 (print), 1650-3740 (online)
At the Eötvös Loránd and University (Budapest) we have two courses on Prolog programming; especially for program designer (MsC) students. Our main objective is to help the students find the subproblems in their projects to be solved with Prolog; and enable them to write the necessary code. At first our main concern is to give clear notions. Next we focus on the technical details of writing small programs. Then we incorporate the questions raised by developing big applications.
In our first course we give an overview of the history of logic programming (LP). We introduce the basic notions of this area; and we discuss the widely used LP language; Prolog; emphasizing a kind of pragmatic programming methodology which helps us to develop correct and effective programs. We talk many short examples over; in order to make the students feel the taste of LP in small.
In our second course we focus on writing bigger programs and using advanced Prolog programming techniques like generate and test techniques; exception handling; writing and using second-order predicates; splitting our programs into modules; using partial data structures; d-lists; and logic grammars. We discuss many typical problems to be solved with logic programs.
[1] Deransart P.; Ed-Dbali A.A.; Cervoni L.; Prolog: The Standard (Reference Manual); Springer-Verlag; 1996.
[2] O’Keefe R. A.; The Craft of Prolog; The MIT Press; Cambridge; Massachusetts; 1990.
[3] SICStus Prolog 3.11 User’s Manual; Swedish Institute of Computer Science; PO Box 1263; S-164 28 Kista; Sweden; 2003. (http://www.sics.se/isl/sicstuswww/site/documentation.html)
[4] Sterling L.; Shapiro E.; The Art of Prolog (Second Edition); The MIT Press; London; England; 1994.
[5] Szeredi P.; Benkö T.; Deklarat´iv programozás: Bevezetés a logikai programozásba (Declarative Programming: Introduction into Logic Programming); BME; Budapest; 2000.
[6] ´Asvanyi T.; Logikai programozas (Logic Programming); in: “Programozasi nyelvek (Programming Languages)”; (editor: Nyékyné Dr. Gaizler Judit); pp. 637-684. Kiskapu Kft. Budapest; 2003.