Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!samsung!think!snorkelwacker!bloom-beacon!MITVMA.MIT.EDU!STCS8004%IRUCCVAX.UCC.IE From: STCS8004%IRUCCVAX.UCC.IE@MITVMA.MIT.EDU Newsgroups: comp.lang.scheme Subject: Scheme as 1st language Message-ID: <9002200317.aa29279@mintaka.lcs.mit.edu> Date: 15 Feb 90 14:52:00 GMT Sender: daemon@athena.mit.edu (Mr Background) Organization: The Internet Lines: 33 I am soliciting the community's views regarding the choice of Scheme as the first programming language to be taught to students majoring in Computer Science. The Department of Computer Science at University College Cork, Ireland is undertaking a major restructuring of its Honours Degree program in the Faculties of Arts and of Science and the question has arisen whether or not the time given to Pascal would be better utilized in some other way, such as algorithm design and analysis, for instance. We presently teach the full standard Pascal to our first-year students in a course of 52 lectures over 26 weeks, plus the usual tutorial/practical sessions. There is also a 1 hour per week course of lectures on non-Pascal intro- ductory Computer Science topics. I would be interested to receive views on the what the first programming language should be, and to learn of the experiences---good or bad---of those who have switched away from Pascal to something else. We presently use Scheme extensively in our 'Data Structures' and 'Compiler Theory and Practice' courses with great success, the students being largely self-taught Scheme through Friedman and Felleisen's 'The Little LISPer'. It is seeing how much quicker students can understand, analyze, and undertake proofs of correctness of the relevant algorithms expressed in Scheme that prompts the consideration of using some form of small non-trivial functional programming language at an earlier stage in their education. I consider that the fundamentals of algorithm design and programming style should be taught with the minimum of syntactic baggage, and only then should a study of alternative programming languages and styles be undertaken---but what are your views, please? G. Oulsnam.