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: 109fba,baaf5f793d03d420 X-Google-Attributes: gid109fba,public 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 From: "Tim Behrendsen" Subject: Re: What's the best language to start with? [was: Re: Should I learn C or Pascal?] Date: 1996/08/14 Message-ID: <01bb89f2$0814ea60$87ee6fce@timpent.airshields.com>#1/1 X-Deja-AN: 174143620 references: <31FBC584.4188@ivic.qc.ca> <01bb83ad$29c3cfa0$87ee6fce@timpent.airshields.com> <4u89c4$p7p@solutions.solon.com> <01bb83f5$923391e0$87ee6fce@timpent.airshields.com> <4uah1k$b2o@solutions.solon.com> <01bb853b$ca4c8e00$87ee6fce@timpent.airshields.com> <320b35a2.43769707@nntp.ix.netcom.com> <01bb8609$59339140$87ee6fce@timpent.airshields.com> <320bf032.7193774@nntp.ix.netcom.com> <01bb8802$a5ff3a60$32ee6fce@timhome2> <320f14e5.213196860@nntp.ix.netcom.com> <01bb8854$c2f6b880$87ee6fce@timpent.airshields.com> <320fe7f4.7066811@nntp.ix.netcom.com> <01bb8923$e1d34280$87ee6fce@timpent.airshields.com> <32115234.7B0@ix.netcom.com> 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-14T00:00:00+00:00 List-Id: Giuliano Carlini wrote in article <32115234.7B0@ix.netcom.com>... > Tim Behrendsen wrote: > > > > Mike Rubenstein wrote in article > > <320fe7f4.7066811@nntp.ix.netcom.com>... > > > I've probably been helped more by my knowledge of about 25 higer level > > > languages. > > > > > > Obviously, all other things being equal, it is better to know assembly > > > language that to not know it. But all other things are seldom equal. > > > I suspect that most beginning programmers would gain much more from > > > learning some different HLLs. Given a choice, I'd strongly recommend > > > one learn LISP, APL, Icon, or any of a few dozen other languages to > > > learning assembly language. > > Every programmer should know assembler as their 2cnd or third language. > Okay, not recreational programmers, or those knocking together small > programs, but every one who puts together programs that are larger than > say 10K lines of code. > > You don't need to write in it often, but you need it to be able to > debug competently. > > There are far to many times I'm called in to help someone debug, when > it turned out to be a stupid compiler or system bug that a good > understanding of assembler would have spotted immediately. > > There are times I need to dive into the compiler runtime, or into the > OS to debug my buggy code. > > If you don't understand assembler, your reduced to trying one trivial > change to your program after another. When one finally works, you've > have no clue why. Then you can't document why some monstrous section > of code is the way it is. And that causes problems later on. Or heck, to examine a core dump in the field. I list out the assembly all the time to see what happened. I'm one of the few people in my company who can do a post-mortem without source-level debugging turned on, and I don't even know the (RS/6000) assembly language! I've just seen enough of them to be able to feel my way around the instruction set. -- Tim Behrendsen (tim@airshields.com)