Path: utzoo!mnetor!tmsoft!dptcdc!jarvis.csri.toronto.edu!turing.toronto.edu!holt From: holt@turing.toronto.edu (Ric Holt) Newsgroups: comp.software-eng Subject: Levels of Mastery [of a programming language] Message-ID: <89Mar20.170837est.4597@turing.toronto.edu> Date: 20 Mar 89 22:08:22 GMT Organization: University of Toronto, CSRI Lines: 30 >From: janssen@titan.sw.mcc.com (Bill Janssen) >Subject: Re: Good Design Strategies > >Modula-3 and Turing both seem to be nice languages. But I feel that we >are past the point where a language that has all the "good" SE features >can really be small and easy to learn. We just know more about what >helps to build good code. What we need is a language that can be learned >(and used) in steps, as a person learns the methodological steps that drive >each part of the language. In response to Bill Janssen's wish for a language that can be learned in parts... One of the design goals of the Turing language was to support "levels of mastery". You can learn a little of Turing to do a little programming. Or a lot to do a lot. Turing is, for example, used instead of BASIC or Pascal in high schools, and is as easy to learn as BASIC. It is also used to write Polyx (multi-CPU Unix) and its own portable compiler. Many Turing features "fold out" to provide increasing sophistication to increasingly sophisticated users. For example: put x put x : 10 put x : 10 : 2 put x : 10 : 2 : 1 These specify, in order, default (simple) output, output width of 10, number of fractional digits (2), and number of exponent digits (1). Ric Holt