In article <[EMAIL PROTECTED]>, Mirco Wahab <[EMAIL PROTECTED]> wrote: >Thus spoke Cameron Laird (on 2006-06-25 13:08): > >> I'll gratuitously add that, even though I'm personally fond of >> C++, I think teaching it as is done in colleges and high schools >> (!) amounts to child abuse. It's wildly inappropriate. > >C++ programming requires you to >massively invest your thinking >first into the setup of your >build environment (can only be >beaten by Java here).
A while back I had the opportunity to teach a section of an introductory computer science course in C++. They had recently abandoned Pascal in favor of C++ as the language of choice. There was certainly some spinup on the development environment to do, but it wasn't too terrible. I think the real problem with C++ is that there is a lot of conceptual baggage to work around to get to a useful program without having the students "unlearn" things later. Just basic things like const (in its various forms), pointers vs. references, class basics, headers, etc., are necessary for idiomatic C++ programming, but they get in the way of teaching more basic concepts of program construction. I understand that the school switched to Java a short time later, which is some improvement, but still has a good bit of baggage. Now the Schemers have taken over, so they teach Scheme as the introductory language. One thing about Scheme is that it doen't have a lot of baggage; there is no room for it in the spec. :-) To return to topicality for a moment, I think exposing new students to a combination of Scheme and Python might work well, providing different views of how to build programs, and leaving the students with both theoretical and practical foundations on which to build. Gary Duzan Motorola CHS p.s. Then sock them with ML or Haskell to weed out the weak ones. ;-) Then if they survive Occam, throw Java at them, so they'll know what they are missing but can still get a job... -- http://mail.python.org/mailman/listinfo/python-list