Prolog is an excellent language with many fine features. It is the foundation of the Japanese Fifth Generation project and is one of the main languages in which Artificial Intelligence systems are implemented. Prolog is now being used widely at all levels of education from primary school through to university level. Much of the knowledge about the problems associated with teaching and using Prolog has been disseminated informally through seminars, word of mouth and so on. Both this special issue and a companion special issue (to appear in the next volume) are devoted to fundamental research that informs the teaching commu nity about some of the issues and problems that should help readers to increase their awareness when embarking on teaching (or learning) and using Prolog. This issue, "part A", features seven papers that provide different analyses of the prob lems in understanding Prolog and some progress in supporting Prolog novices in their attempts to understand their programs. The companion special issue, "part B", provides six papers that deal more directly with the problems of supporting program construction and debugging (Pain et cd, forthcoming) In both special issues, the focus is on the improvement of our understanding in order to encourage the best use of Prolog. Here, there is no concerted attack on Prolog but a determination to improve the learning and application of a language which has some considerable promise. The idea for this stemmed from a workshop held in 1987 at Coseners House, Abingdon, UK, and funded by the UK's Alvey programme. Fifteen academic and industrial researchers met to discuss the current state of research relating to the use of Prolog by programmers with the main emphasis on issues relating to learn ing Prolog. Many of the papers in these two special issues were the result of dis cussions that happened at this workshop which had an unusual structure in that people were encouraged to form groups with the express purpose of generating outline papers. In particular, three papers owe a great debt to the cooperation of the participants, initially at the workshop, and then afterwards: "Towards a Taxonomy of Novices' Misconceptions of the Prolog Interpreter" by Fung et al (part A), "Prolog Programming Techniques" by Brna et al (part B), and "An Overview of Prolog Debugging Tools" by Brna et al (part B).