🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #552

Re: Which language to teach first?

#552
From: George Mitchell
Date: Thu, 17 Aug 1989 15:32
43 lines
3209 bytes
In article <1504@l.cc.purdue.edu> cik@l.cc.purdue.edu (Herman Rubin) writes:
>
>One of the great difficulties with the languages is that they give a very
>distorted view of what a computer does.  A computer does nothing but bit
>manipulations and transfers of control.  Some of these bit manipulations
>are organized in certain ways for convenience and efficiency.  Some bit
>manipulations are done in hardware by some computers and not by others,
>but any computer can simulate any other on a clearly defined task.
>
This discussion has now covered the entire range from Register Transfer
Languages to 4GLs.  Is it possible that "none of the above" is a better
answer?  Although I started my journey with assembly language on a 12-bit
machine (PDP-8), I do not see why others should repeat the trip.  I will
admit that RTLs and ALs will give the student a better appreciation of the
underlying hardware, but most practitioners of computer science are
shielded from the hardware by layers of system software.  Understanding
that, should be of higher priority than understanding the hardware.

Why does any language need to be taught in an introductory course.  Aren't
there enough concepts to cover without introducing a particular programming
language and requiring the student to "write programs"?  When the student
leaves the school, will the task be to write programs or to develop
software?  Before the student gets started down the same path as other
"DISMAL" programmers, why not teach the concepts of program design without
relying on a particular programming language?  I would suggest the use of
Nassi-Schneiderman diagrams as an appropriate tool for the student to
acquire the ability to develop and follow program/algorithm designs.

Since many new graduates are initially assigned as maintenance programmers,
the debugging of programs is as important as writing them.  If any language
is to be used in the course, its use should be restricted as follows:
  1.  No input to compilers
  2.  Code fragments only
  3.  Emphasis on debugging, not writing
  4.  Minimize syntactical considerations
If the above restrictions are followed, structured English should suffice.

After completing the introductory course, Ada should be a more than
satisfactory choice for the first/principal programming language.

/s/ George          703/883-6029              GB Mitchell, MS Z676
Easiest: gmitchel@mitre.org                   MITRE, 7525 Colshire Drive
Best:    mitchell@community-chest.mitre.org   McLean, VA 22102
Technical Details
Message-ID: <64381@linus.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!ginosko!uunet!philmtl!philabs!linus!community-chest!mitchell
References: <2552@aplcen.apl.jhu.edu> <6204@hubcap.clemson.edu> <5594@ficc.uu.net> <30666@ucbvax.BERKELEY.EDU> <1504@l.cc.purdue.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!ginosko!uunet!philmtl!philabs!linus!community-chest!mitchell
From: mitchell@community-chest.uucp (George Mitchell)
Newsgroups: comp.lang.misc
Subject: Re: Which language to teach first?
Message-ID: <64381@linus.UUCP>
Date: 17 Aug 89 15:32:58 GMT
References: <2552@aplcen.apl.jhu.edu> <6204@hubcap.clemson.edu> <5594@ficc.uu.net> <30666@ucbvax.BERKELEY.EDU> <1504@l.cc.purdue.edu>
Sender: news@linus.UUCP
Reply-To: mitchell@community-chest.UUCP (George Mitchell)
Organization: MITRE-McLean Software Engineering Laboratory
Lines: 43