What's wrong? Understanding beginners' problems with Prolog

Instructional Science - Tập 19 Số 4-5 - Trang 257-282 - 1990
Maarten W. van Someren1
1Department of Social Science Informatics, University of Amsterdam, Roetersstraat 15, 1018 WB Amsterdam, The Netherlands

Tóm tắt

Từ khóa


Tài liệu tham khảo

Adelson, B. (1981). Problem solving and the development of abstract categories in programming languages. Memory and Cognition, 9, 422?433.

Adelson, B., Littman, D. and Soloway, E. (1984). A model of expert design. In Proceedings of the Cognitive Science Conference, Boulder.

Anderson, J. R. (1983). Learning to program. In Proceedings of the Eighth International Joint Conference on Artificial Intelligence, Karlsruhe, Germany.

Anderson, J. R., Farrell, R. and Sauers, R. (1984). Learning to program in LISP. Cognitive Science, 8, 87?129.

Bonar, J. and Soloway, E. M. (1985). Pre-programming knowledge: a major source of misconceptions in novice programmers. Human-Computer Interaction, 1, 133?162.

Brown, J. S. and VanLehn, K. (1980). Repair theory: a generative theory of bugs in procedural skills. Cognitive Science, 4, 379?426.

Burstein, M. (1983). Concept formation by incremental analogical reasoning and debugging. In Proceedings of the Machine Learning Workshop 1983, Illinois.

Clocksin, W. and Mellish, C. (1981). Programming in Prolog. Berlin: Springer Verlag.

Coombs, M. J. and Stell, J. G. (1984). A model for debugging PROLOG by symbolic execution: the separation of specification and procedure. Department of Computer Science, University of Strathclyde.

Douglas, S. A. and Moran, T. P. (1980). Learning operator semantics by analogy. In Proceedings AAAI-80, 100?103.

du Boulay, B., O'Shea, T. and Monk, J. (1981). The black box inside the glass box. International Journal of Man-Machine Studies 14, 237?249.

Gegg-Harrison, T. S. (1989). Basic Prolog schemata. Report CS-1989?20, Department of Computer Science, Duke University, Durham, North Carolina.

de Groot, A. D. (1965). Thought and choice in chess. The Hague: Mouton.

Hoc, J.-M. (1981). Planning and direction of problem solving in structured programming: an empirical comparison between two methods International Journal of Man-Machine Studies, 15, 363?383.

Jeffries, R., Turner, A., Polson, P. and Atwood, M. (1981). The processes involved in designing soft-ware. In J. R. Anderson (Ed.), Cognitive skills and their acquisition. Hillsdale, NJ: Lawrence Erlbaum Associates.

Johnson, W. L. and Soloway, E. M. (1984). Intention-based diagnosis of programming errors. Proceedings AAAI-84, 162?168.

Kahney, H., (1982). An in-depth study of the cognitive behaviour of novice programmers. Human Cognition Research Laboratory Tech. Report 5, The Open University, Milton Keynes.

Kowalski, R. (1982). Logic as a programming language for children. In Proceedings of the European Conference on AI 1982, 2?10.

Mayer, R. E. (1981). The psychology of how novices learn computer programming. Computing Surveys, 13, 121?141.

McKeithen, K. B., Reitman, J. S., Rueter, H. H. and Hirtle, S. C. (1981). Knowledge organisation and skill differences in computer programmers. Cognitive Psychology, 13, 307?325.

Miller, L. A. (1975). Naive programmer problems with specification of transfer-of-control. In Proceedings of AFIPS National Computer Conference, 44, 657?663.

Pain, H. and Bundy, A. (1987) What stories should we tell novice Prolog programmers? In R. Hawley (Ed.), Artificial intelligence programming environments. Chichester: Ellis Horwood.

Perkins, D. N. and Martin, F. (1986). Fragile knowledge and neglected strategies in novice programmers. In E. M. Soloway and S. Iyengar (Eds.), Empirical studies of programmers. Norwood: Ablex.

Pirolli, P. L., Anderson, J. R. and Farrell, R. (1983). Learning to program recursion. In Proceedings Cognitive Science Conference, Boulder.

Plummer, D. (1990). Cliché programming in Prolog. In M. Bruynooghe (Ed.), Proceedings of the 2nd Workshop on Meta-Programming in Logic, 247?256, Leuven.

Rist, R. S. (1986). Plans in programming: definition, demonstration and development. In E. M. Soloway and S. Iyengar (Eds.), Empirical studies of programmers. Norwood: Ablex.

Shapiro, D. G. (1981). Sniffer: a system that understands bugs. AI Memo 638, MIT AI Lab.

Soloway, E. M. and Woolf, B. (1980). Problems, plans and programs. SIGSCE Bulletin, 12, 16?24.

Soloway, E. M. and Iyengar, S. (Eds.) (1986). Empirical studies of programmers. Norwood: Ablex.

van Someren, M. W. (1990). Understanding students' errors with Prolog unification. Instructional Science, this issue.

Spohrer, J. C., Soloway, E. and Pope, E. (1985). A goal/plan analysis of buggy Pascal programs, Human-Computer Interaction, 1, 163?207.

Spohrer, J. C. and Soloway, E. M. (1986). Novice mistakes: are the folk wisdoms correct? Communications of the ACM, 29, 624?632.

Taylor, J. and du Boulay, B. (1986). Studying novice programmers: why they may find learning Prolog hard. In J. Rutkowska (Ed.), Issues for developmental psychology. New York: Wiley.

Tromp, D. (1989). The acquisition of expertise in computer programming. Ph.D. thesis, University of Amsterdam.