Skip to main content
Log in

Mini-languages: a way to learn programming principles

  • Published:
Education and Information Technologies Aims and scope Submit manuscript

Abstract

Mini-languages are a visually intuitive, simple and powerful way to introduce students to programming. They are a good foundation for general computer science instruction, provide insight into programming for the general population, and teach algorithmic thinking. The goal of the paper is to provide an extensive review of the mini-language approach to teaching programming. For different audiences and in different countries, the authors have extensive experience in design and application of mini-languages. We outline the problems that motivate the application of this approach, present a brief history, review several existing mini-languages, and provide discussion of lessons learned. In particular, we discuss how to choose a mini-language for a particular group of students and list some requirements for a successful application of a mini- language. We conclude with a discussion of possible future directions of the mini-language approach development

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

REFERENCES

  • Brusilovsky, P. (1990) Languages for teaching the principles of programming (in Russian). Informatika i Obrasovanije (Informatics and Education) 5 (2), 3–9.

    Google Scholar 

  • Brusilovsky, P. L. (1991) Turingal – the language for teaching the principles of programming. In Proceedings of the Third European Logo Conference, E. Calabrese (ed.), Parma, 27–30 August 1991, pp. 423–32.

  • Brusilovsky, P. L. (1992) Intelligent tutor, environment and manual for introductory programming. Educational and Training Technology International 29 (1) 26–34.

    Google Scholar 

  • Brusilovsky, P. (1994) Program visualisation as a debugging tool for novices. In Pro-ceedings of INTERCHI'93 (Adjunct proceedings) Amsterdam, 24–9 April 1993, pp. 29–30.

  • Brusilovsky, P. (1993) Explanatory visualization in an educational programming environ-ment: connecting examples with general knowledge. In Human-Computer Interaction, Proceedings of Fourth International Conference on Human-Computer Interaction, EWH-CI'94, Lecture Notes in Computer Science. B. Blumenthal, J. Garnastaev and C. Unger (eds), Berlin, Springer-Verlag, 876, 202–12.

    Google Scholar 

  • Calabrese, E. (1989) Marta – the 'intelligent turtle'. In Proceedings of the Second European Logo Conference, G. Schuyten and M. Valcke (eds), Ghent, Belgium, 30 August– 1 September 1989, pp. 111–27.

  • Comar, C. and Pintelas, P. (1989) An environment for teaching 'program design' by exercises. Microprocessing and Microprogramming 28, 259–64.

    Google Scholar 

  • da Rocha, H. V. (1993) The use of computational representation in the teaching and learning of programming concepts. In Proceedings of the Fourth European Logo Conference, Athens, Greece, 28–31 August 1993, P. Georgiadis, G. Gyftodimos, Y. Kotsanis and C. Kynigos (eds), pp. 153–9.

  • De Corte, E. (1993) Towards embedding enriched Logo-based learning environments in the school curriculum: retrospect and prospect. In Proceedings of the Fourth Logo Conference, Athens, Greece, 28–31 August 1993, P. Georgiadis, G. Gyftodimos, Y. Kotsanis and C. Kynigos (eds), pp. 335–49.

  • Dion, P. and Lelouche, R. (1988) Architecture of an intelligent system to teach introductory programming. In Proceedings of ITS'88, International Conference on Intelligent Tutoring Systems, C. Frasson (ed.), Montreal, 1–3 June 1988, pp. 387–94.

  • du Boulay, J. B. H., O'Shea, T. and Monk, J. (1981) The black box inside the glass box. Mini-languages: learning programming principles 81.</del>Presenting computing concepts to novices. International Journal on the Man–Machine Studies 14 (3), 237–49.

    Google Scholar 

  • Eisenstadt, M. (1983) A user-friendly software environment for the novice programmer. Communications of the Association for Computing Machinery 20 (12), 1058–64.

    Google Scholar 

  • Fenton, J. and Beck, K. (1989) Playground: An object-oriented simulation system with agent rules for children of all ages. In Proceedings of OOPSLA'89 Object-oriented Programming: Systems, Languages, Applications, New Orleans, LA, 2–6 October 1989, N. Meyrowitz (ed), pp. 123–37.

  • Ferguson, D. L. (1987) The design of algorithms. Machine Mediated Learning 2 (1, 2), 67–82.

    Google Scholar 

  • Gasparovicova, L. and Hvorecky, J. (1991) Kamarati Robota Karla (Friends of Karel the Robot, in Slovak, Bratislava, Mlade leta.

    Google Scholar 

  • Hvorecky, J. (1992) Karel the Robot for PC. In Proceedings of the East–West Conference on Emerging Computer Technologies in Education, P. Brusilovsky and V. Stefanuk (eds), Moscow, 6–9 April 1992, pp. 157–60.

  • Kato, H. and Ide, A. (1993) Algo Arena: A system for learning programming through social interactions. In Proceedings of the Fourth European Logo Conference, Athens, Greece, 28–31 August 1993, P. Georgiadis, G. Gyftodimos, Y. Kotsanis and C. Kynigos (eds), pp. 111–22.

  • Kato, H. and Suzuki, H. (1993) AlgoBlock: A tangible programming language. In Proceedings of the Fourth European Logo Conference, Athens, Greece, 28–31 August 1993, P. Georgiadis, G. Gyftodimos, Y. Kotsanis and C. Kynigos (eds), pp. 123–33.

  • Kay, J. and Tyler, P. (1993) A microworld for developing learning design strategies. Computer Science Education 3 (1), 111–22.

    Google Scholar 

  • Kouchnirenko, A. G., Lebedev, G. V. and Svoren, R. A. (1993) Foundation of Computer Science and Technology (in Russian). Moscow, Prosvecshenie.

    Google Scholar 

  • Kouchnirenko, A. and Kouchnirenko, G. L. (1988) Programming for Mathematicians (in Russian). Moscow, Nauka.

    Google Scholar 

  • Mendelson, P., Green, T. R. G. and Brna, P. (1990) Programming languages in education: the search for an easy start. In J.-M. Hoc, T. R. G. Green, D. Gilmore and R. Samway (eds) Psychology of Programming, pp. 175–200, London; Academic Press.

    Google Scholar 

  • Miller, P., Pane, J., Meter, G. and Vorthmann, S. R. (1994) Evolution of novice programming environments: The structure editors of Carnegie Mellon University. Interactive Learning Environments 4 (2), 140–58.

    Google Scholar 

  • Olimpo, G. (1988) The Robot Brothers: An environment for learning parallel programming oriented to computer education. Computers and Education 12 (1), 113–18.

    Google Scholar 

  • Olimpo, G., Persico, D., Sarti, L. and Tavella, M. (1985) An experiment in introducing the basic concepts of informatics. In Proceedings of the Fourth World Conference on Computers in Education, WCCE'85. K. Dunkan and D. Harris (eds), Amsterdam, pp. 31–8.

  • Papert, S. (1980) Mindstorms, Children, Computers and Powerful Ideas. New York, Basic Books.

    Google Scholar 

  • Pattis, R. E. (1981) Karel – The Robot, A Gentle Introduction to the Art of Programming. London, Wiley.

    Google Scholar 

  • Pattis, R. E., Roberts, J. and Stehlik, M. (1995) Karel – The Robot, A Gentle Introduction to the Art of Programming. 2nd edn. New York, Wiley.

    Google Scholar 

  • Resnick, M. (1990) MultiLogo: a study of children and concurrent programming. Interactive Learning Environments 1 (3), 153–70.

    Google Scholar 

  • Scheftic, C. and Goldenson, D. (1986) Teaching programming methods and problem solving: the role of programming environments based on structure editors. In Proceedings of the National Educational Computing Conference, pp. 231–6.

  • Sellman, R. (1992) Gravitas: An object-oriented discovery learning environment for Newtonian gravitation. In Proceedings of the East–West International Conference on Human-Computer Interaction. J. Gornostaev (ed.), St Petersburg, 4–8 August 1992, pp. 31–41.

  • Smith, D. C., Cypher, A. and Spohrer, J. (1994) KidSim: programming agents without a programming language. Communications of the Association for Computing Machinery 37(7), 54–67.

    Google Scholar 

  • Tomek, I. (1982) Josef, the robot. Computers and Education 6 (3), 287–93.

    Google Scholar 

  • Tomek, I. (1983) The First Book of Josef. Englewood Cliffs, Prentice-Hall.

    Google Scholar 

  • Whalley, P. (1992) An alternative metaphor for teaching control technology. In Proceedings of the East–West Conference on Emerging Computer Technologies in Education. P. Brusilovsky and V. Stefanuk (eds), Moscow, 6–9 April 1992, pp. 328–31.

  • Witschital, P., Stiepe, G. and Kuehme, T. (1989) Experiencing programming language constructs with TRAPS. In Computer Assisted Learning, proceedings of the Second International Conference, ICCAL'89, Lecture notes in Computer Science, Vol. 360, H. Maurer (ed), pp. 591–602. Berlin: Springer-Verlag.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Brusilovsky, P., Calabrese, E., Hvorecky, J. et al. Mini-languages: a way to learn programming principles. Education and Information Technologies 2, 65–83 (1997). https://doi.org/10.1023/A:1018636507883

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1018636507883

Navigation