Teaching multiple programming paradigms: a proposal for a paradigm general pseudocode

Initial overexposure to the imperative programming paradigm can make it very difficult to introduce students to other paradigms, such as the functional, object oriented and logical paradigms. It is important that students be exposed to several programming paradigms early. Two techniques commonly used to accomplish this are a “survey of languages” approach and use of a language, such as Scheme, that overlaps several paradigms. We propose the use of a paradigm-general pseudocode that can then be translated into the most appropriate target language. This paper describes in detail the features and form of this pseudocode using familiar algorithms. This approach has been used successfully in an upper division class and we believe it can be refined and introduced earlier in the curriculum.