This project aims to develop a computer tutor for logic programming for the student to use in the practical session. The computer tutor generally performs the following tasks: (i) to pose the student programming exercises; (ii) to analyse the student's programs and give comments, suggestions or corrections when appropriate; (iii) to guide the student to the correct programming track by providing directive guidance when the student is not able to program on his own; (iv) to assess the student's knowledge state of logic programming skills and adapt the tutoring process and the progression of learning to the student's needs. This development, we believe, will have potentially wide impact on many programming and IT modules in a variety of courses across the School, Faculty and University in the sense that it will pioneer the methods and techniques for the effective development of a variety of computer tutors to provide adaquate and individual help to the students for their learning the corresponding programming languages and IT tools.