[net.lang] Thoughts on Object oriented languages and Intro. Classes

mark@harvard.UUCP (Mark Lentczner) (06/20/84)

( :-( I'm being eaten by a boa-line-eater... )

While I did not take the Harvard Course in SCHEME nor did
I TF it, I am fairly well aquainted with it.  My first
thought is that it is a bit of an exaggeration to call
SCHEME, as it was taught, an Object-Oriented language. If
i'm not mistaken, only a few of the problem sets were
really done in the object style.

I do not think that CPU intensive languages and/or projects
should be a major factor in intro. course design.  Sure,
we all want all of the 300+ students to get enough system
time, and we are all concerned about response (as fustrated
students are rarely interested students).  But, I agree
strongly with the person (I missed the name) that talked
about intro. CS to be about CS thinking and concepts, not
one language or another.  And as such, neither object-oriented
nor procedural are approriate single handedly.  But, all
disciplines should be introduced.  I have no desire to drum
up arguments-of-force about which method of programming
is best, I think that that is a sensless waste of time (as
is calling teaching anything but object-oriented brain-dammaged).

In the end there is the underlying CS principles that are
what an intro. course is trying to get accross (I hope so,
at least), and not any particular language/system's scripture.
I agree that it is bad that there is a group of CS students
that feel that C/Unix is the height of everything.  But they
shoudln't think that objects are everything either, nor Pascal,
nor Lisp.  The languages and systems are only the means, it is
the ways that are important.

Now, of course I realize that there are certian practical
limits to the number of systems and languages that can be
taught in a terms worth of intro CS.  But, at lease the dogma
aspect of the language used could be removed.  Maybe
using two languages throught the term.  Or, having different
sections of the class work in different languages... (hmm,
i just thought of that, sort of interesting)

Lastly, an anecdote:
It always strikes be funny when someone says that they don't
`know C' (for instance) but they do `know PASCAL'.  I find
people use these terms not to mean that they don't know the
particular syntax or primatives involved, but that they feel
that they couldn't know how to program in it.  It is as if
they associate all the algorithms and concepts WITH the language
and feel that there is some whole new set for each language.
This is really sad.  They have failed to learn what they know
as CS concepts but as dogma for a particular language/system. 

oh, sorry to have gone on so long, but I felt I had to say it...


-mark lentczner
 electronic music studio
 music department
 harvard university
 cambridge, ma 02138

 lentczner@harvard
 {allegra,genrad,ihnp4,ima,ucbvax}!harvard!lentczner