From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: *** X-Spam-Status: No, score=3.8 required=5.0 tests=BAYES_00,INVALID_MSGID, RATWARE_MS_HASH,RATWARE_OUTLOOK_NONAME autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fc89c,97188312486d4578 X-Google-Attributes: gidfc89c,public X-Google-Thread: 1014db,6154de2e240de72a X-Google-Attributes: gid1014db,public X-Google-Thread: 103376,97188312486d4578 X-Google-Attributes: gid103376,public X-Google-Thread: 109fba,baaf5f793d03d420 X-Google-Attributes: gid109fba,public From: "Tim Behrendsen" Subject: Re: What's the best language to start with? [was: Re: Should I learn C or Pascal?] Date: 1996/08/07 Message-ID: <01bb84b4$75304ce0$87ee6fce@timpent.airshields.com>#1/1 X-Deja-AN: 172784730 references: <01bb73e3.1c6a0060$6bf467ce@dave.iceslimited.com><1996Jul20.124025.122789@kuhub.cc.ukans.edu><01bb7b06$311fabc0$87ee6fce@timpent.airshields.com> <31FBC584.4188@ivic.qc.ca> <01bb7da2$6c505ac0$96ee6fcf@timhome2><01bb8027$de0e9c80$96ee6fcf@timhome2> <4u5a11$siv@mulga.cs.mu.OZ.AU><01bb8342$88cc6f40$32ee6fcf@timhome2> <4u86lc$2gu@mulga.cs.mu.OZ.AU><01bb846d$c6c01780$87ee6fce@timpent.airshields.com> <4uaqqg$203@mulga.cs.mu.OZ.AU> content-type: text/plain; charset=ISO-8859-1 organization: A-SIS mime-version: 1.0 newsgroups: comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.lang.ada Date: 1996-08-07T00:00:00+00:00 List-Id: Fergus Henderson wrote in article <4uaqqg$203@mulga.cs.mu.OZ.AU>... > "Tim Behrendsen" writes: > >Who's talking about showing them? I would suggest that if > >they wrote a quicksort in assembler, they will have a much > >better "feel" for the algorithm, than if they wrote it in C. > > So which is better use of a student's time, writing 100 lines of > quicksort in assembler, or using C and writing 20 lines of quicksort, > 10 lines of insertion sort, 20 lines of heap sort, 20 lines of > merge sort, and 30 lines of glue to test them all out? I think it's more valuable to truly understand one or two algorithms, than to vaguely understand 5 algorithms. > Which will give them more practice in choosing meaningful variable > names? > Which will give them experience of the idea of > having multiple implementations of the same interface? Which will > teach them how to write portable code? Which will give them more > experience with the sort of software engineering problems they are > likely to encounter in the Real World [tm]? Easily learned. Later. More important to understand the procedural nature of the computer at first. > Which will give them understanding of a range of different > sorting algorithms? I would rather they have a better fundamental understanding of algorithms in general. If I may extend a famous quote, "Teach a man an algorithm, and you have given him one solution. Teach a man to think, and you have given him all solutions." [Hey! I like that... anybody want to quote me in their next book? ;-> ] -- Tim Behrendsen (tim@airshields.com)