Edward Elliott <[EMAIL PROTECTED]> wrote: ... > course in C++ doesn't cut it, the curriculum should either use different > languages fitted to each task or emphasize a single language with broad > abilities (picking the best programming model for each task). Java is
The only "single language" I could see fitting that role is Mozart, deliberately designed to be SUPER-multi-paradigm -- not even Lisp and Scheme (the only real competition) can compare. While Mozart appears cool, I really think that a wider variety of languages would help -- some machine code (possibly abstract a la Mixal), C (a must, *SO* much is written in it!), at least one of C++, D, or ObjectiveC, either Scheme or Lisp, either *ML or Haskell, either Python or Ruby, and at least one "OOP-only" language such as Java, C#, Eiffel, or Smalltalk. For a tipycal CS bachelor course, a set of over half a dozen languages might be overkill, admittedly (particularly because these are just the "general purpose" languages -- you no doubt also want to present XML and friends, possibly XSLT, definitely SQL, and several other *special*-purpose language classes, too....!!!); too much time would end up devoted to semirelevant syntax differences... > Note that I'm talking about teaching languages. Outside the classroom my > choices would be completely different. Absolutely, I'm thinking about CS courses specifically -- for science and engineering courses, I'd have much different sets (yes, Virginia, there ARE fields where you still absolutely need to know Fortran!-), for humanities and soft-sciences other ones yet, and the real world is a different (and frightening;-) sort of place!-) Alex -- http://mail.python.org/mailman/listinfo/python-list