home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!stanford.edu!agate!usenet.ins.cwru.edu!b63519.STUDENT.CWRU.Edu!dpn2
- From: dpn2@po.CWRU.Edu (Damien P. Neil)
- Newsgroups: comp.programming
- Subject: Re: first-year programming languages
- Date: Wed, 18 Nov 1992 23:55:18 GMT
- Organization: Case Western Reserve University
- Lines: 29
- Distribution: na
- Message-ID: <dpn2.111.722130918@po.CWRU.Edu>
- References: <1992Nov13.171915.26423@cbnewsc.cb.att.com> <aelman.721693402@Xenon.Stanford.EDU> <dnebing-141192140340@m64-143.bgsu.edu> <BxsFop.Jvw@watserv1.uwaterloo.ca> <BxxKvy.4rI@news.cso.uiuc.edu> <1eeg4nINNs38@matt.ksu.ksu.edu>
- NNTP-Posting-Host: b63519.student.cwru.edu
-
- I took an Intro to CS course at Carnegie Mellon, and they have a rather
- interesting approach: they start students out with a pseudolanguage called
- Karel. This language strongly resembles Pascal, but all it can be used for
- is to move a simulated robot around and have it interact with a simple
- world.
-
- The interpreter and editor are integrated and designed so that students can
- almost completely ignore syntax, and just concentrate on the concepts of
- programming. It is possible to write a large portion of the program using
- only a mouse.
-
- This language teaches concepts like control structures, structured
- programming, and even recursive algrothms before students learn what a
- variable is. (There are no variables in Karel.)
-
- After covering Karel extensively, the course moves on to Pascal. The Pascal
- interpreter is identical in interface to the Karel compiler, and has a
- number of very nice features. (Although it is far, far too slow for any real
- work.) Some of the nice bits include the nicest call stack that I have
- _ever_ seen. It makes the most beautiful representations of linked lists...
-
- The final project in the class is to write a Karel interpreter, which brings
- the whole course full circle. I found it an excellent approach. Even though
- I was quite familiar with the mechanics of programming when I took it, I
- learned a huge amount about programming style. Enough, in fact, to make
- up for being forced to program Pascal on a Mac... :-)
- +-------------+------------------+---------------------------------+
- | Damien Neil | dpn2@po.cwru.edu | Case Western Reserve University |
- +-------------+------------------+---------------------------------+
-