Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site utai.UUCP Path: utzoo!utcsri!utai!lamy From: lamy@utai.UUCP (Jean-Francois Lamy) Newsgroups: net.cse Subject: Re: pascal as an intro language Message-ID: <1350@utai.UUCP> Date: Mon, 24-Feb-86 13:34:59 EST Article-I.D.: utai.1350 Posted: Mon Feb 24 13:34:59 1986 Date-Received: Mon, 24-Feb-86 14:43:26 EST References: <111@polyob.UUCP> <156@leopard.UUCP> Reply-To: lamy@utai.UUCP (Jean-Francois Lamy) Distribution: net Organization: CSRI, University of Toronto Lines: 43 Summary: In article <156@leopard.UUCP> perry@leopard.UUCP (Perry S. Kivolowitz) writes: >I would suggest that Pascal be used as an introductory procedural lan- >guage to be replaced in the second year by C. To go one step further I >would replace C in the third year of study with C++ to get students >used to the idea of non-procedural languages (there can be an object- >oriented to C++ sources). Huh? C++ (or object-oriented languages) are hardly "non-procedural". At Universite de Montreal Pascal has been used since the early 70's to teach computer science majors. It has never been used alone though. The program lasts three years (our first year students would be sophomores in the U.S. - we have one extra year of school before university) At the present time, Pascal is used for the first semester, and is covered in its entirety (i.e. pointers et al.). Ada is used in the second term. Second year students get exposed to low-level programming on micro computers (assembly language and C), but the data structures and algorithms courses still use Pascal. They also get a dose of object-oriented languages since the simulation courses are taught using Simula. Third year students can get a taste of Prolog or Lisp if they choose an AI course, and quite a few bachelor's thesis are implemented in C. Introductory courses for the "general public" (electives and minors) are taught using Pascal on a bunch of dedicated PCs. No complaints there (Turbo Pascal is fast enough for 300 lines max.). In my experience Pascal is quite appropriate as an introductory language because it allows the students to concentrate on a few control structures. However, it should not be used exclusively because it lacks support for modular programming (NOT because it stiffles imagination - imaginative assignements can produce imaginative programmers). Using Pascal and Ada allows us to drive home the structured programming gospel before putting the students in situations where they get the opportunity to really screw things up. -- Jean-Francois Lamy Department of Computer Science, University of Toronto, Departement d'informatique et de recherche operationnelle, U. de Montreal. CSNet: lamy@toronto UUCP: {ihnp4,utzoo,decwrl,uw-beaver}!utcsri!utai!lamy EAN: lamy@iro.udem.cdn ARPA: lamy%toronto@csnet-relay