home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!cs.utexas.edu!sdd.hp.com!ux1.cso.uiuc.edu!news.iastate.edu!iscsvax.uni.edu!bohy6489
- From: bohy6489@iscsvax.uni.edu
- Newsgroups: comp.edu
- Subject: <None>
- Message-ID: <1992Aug27.145915.6303@iscsvax.uni.edu>
- Date: 27 Aug 92 14:59:15 -0500
- References: <1992Aug26.170100.6270@iscsvax.uni.edu> <1992Aug27.164424.249@linus.mitre.org>
- Organization: University of Northern Iowa
- Lines: 116
-
- In article <1992Aug27.164424.249@linus.mitre.org>, crawford@church.mitre.org (Randy Crawford) writes:
- > True also for APL and forth?
-
- Seems to me he said that APL is a functional programming language. And he
- never said *anything* about forth either way. Then again, in all fairness the
- statement was quoted somewhat out of context (but not really).
-
- > No doubt that would include Lotus 123 macros and C shell scripts. I don't
- > think that's a particularly useful statement except to an academic who doesn't
- > have to program in this "language". It smacks of a preoccupation with theory
- > and turing machine equivalency.
-
- Actually, he *did* include macros and shell scripts as programming languages.
- But you're right, he *is* quite preoccupied with theory. In his defense, he
- wrote a heckuva text on language design, which many consider(ed) to be *the*
- programming languages text. All in all, though, I found I was able to be
- interested in the things *he* was interested in throughout the semester.
- Unfortunately, this was very seldom programming languages.
-
-
- >
- >> I *still* maintain (as someone else has pointed out) that it is *not* the
- >> language which encourages bad programming style.
- >
-
- > Whoa. Languages differ greatly in what they _allow_ the programmer to write.
- > And because bad code is often a matter of poor programming style, bad C or bad
- > FORTRAN is much more common than bad Pascal or bad Modula where poor style is
- > more difficult. I would agree with you, however, if you changed the word
- > "encourages" to "guarantees".
-
- Hmmm. I don't know. I think that someone who writes bad code in C is going to
- write bad code in *any* language, at least I have been able to observe this.
- In fact, I have seen some *horrible* Pascal code. Granted, most of the
- problems were due to indentation (non)standards, terrible identifier naming,
- etc. Okay. Make it "languages do not *guarantee* poor programming style".
- BUT, regardless of the language, many programmers do have poor programming
- style. I still cling to that.
-
- > I think you are objecting to more than just parentheses when you deride Lisp.
- > Functional programming languages are an acquired taste.
-
- I'll buy that. Though I do have my opinions (obviously) I also attempt to keep
- an open mind about these things.
-
- > Teaching programming is more than teaching style. If the programming language
- > cannot support structured types, then you cannot use it to teach structured
- > types (or it becomes unnecessarily difficult).. The same holds for data
- > abstraction, abstract data types, advanced data constructs (linked lists, trees,
- > heaps, stacks, etc), recursion, functional programming, etc. In my opinion,
- > FORTRAN, and BASIC are poor choices for such instruction, and C suffers for the
- > poor machine abstraction it affords. Ada is too complex and few compilers are
- > available/affordable on personal computers. The same is true for Common Lisp.
- > Pascal is not ideal in that few professionals use it (like Algol or PL/1 or
- > scheme or ML). The same holds for Modula 2.
-
- There is the school of thought that programming should be taught as a building
- experience, i.e. if you can do this with a limited amount of tools, you can do
- it with the full set. This idea has been incorporated into whole introductory
- courses at one school, to the point that the students programmed in Pascal but
- were forced to do everything with character variables and files. Whether or
- not this holds merit, I do not know. I do know that an awful lot of students
- failed that course.
-
- I do not agree with the above...
-
- *But* I have implemented trees using arrays. Sure, the allocation was not
- *dynamic*, but the concepts were the same. We did this as an exercise in my
- data structures class (even used Pascal to do it). And there is nothing wrong
- with that. It does show some of the assembly language concepts like relative
- addressing and even motivates them. Kind of nice, rather than having to just
- except that "it works".
-
- I see nothing wrong with teaching a course in FORTRAN to beginning students.
- My taking FORTRAN really helped me be a more organized Pascal programmer. That
- may be a function of the instructor I had for both courses (who, incidentally,
- did not have a PhD and has never published but was one hell of a *teacher*).
-
- > I think the conclusion among most academics who care is: teach programming in a
- > language which teaches good stylistic form and supports the constructs needed
- > to learn more about computer science. No language can be all things, but some
- > are simply inappropriate to certain tasks.
-
- I totally agree. Something of a contradiction with your above statement, there
- *are* professionals programming in Pascal. Not a lot, but they are out there.
- I think the language has something of a bad reputation as being a toy. I have
- found it to be very useful for anything I have ever wanted to accomplish. What
- do I know, though? I also prefer VMS to unix. :-]
-
- > (...well reasoned comments deleted...)
-
- Thanks for thinking they were well-reasoned...
-
- > Maybe we should divide universities the way some have suggested we divide
- > college sports: college athletics could become professional and non-academic,
- > and college research could follow its own non-academic track as well. Let the
- > graduate programs become separate entities from undergrad, with different profs
- > and a different agenda (more applied). Measure the undergrad profs as teachers
- > and contributors to the applied sciences. Leave the theorists to write theory
- > and to produce other theorists.
-
- Sounds good to me!
-
- > --
- >
- > | Randy Crawford crawford@mitre.org The MITRE Corporation
- > | 7525 Colshire Dr., MS Z421
- > | N=1 -> P=NP 703 883-7940 McLean, VA 22102
-
- ===============================================================================
- Jim Bohy | "If you have to ask, you'll
- Graduate Student - Computer Science Education | never know..."
- University of Northern Iowa |
- Cedar Falls, IA 50614 | - Louis Armstrong, when asked
- bohy@att1.uni.edu | what jazz is.
- ===============================================================================
-