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=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID 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: 109fba,baaf5f793d03d420 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,97188312486d4578 X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,6154de2e240de72a X-Google-Attributes: gid1014db,public From: amusgrov@varmm.com (AJ Musgrove) Subject: Re: What's the best language to start with? [was: Re: Should I learn C or Pascal?] Date: 1996/07/31 Message-ID: <4toc18$4j0@ns3.iamerica.net>#1/1 X-Deja-AN: 171319716 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> followup-to: comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.lang.ada organization: LDS iAmerica newsgroups: comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.lang.ada Date: 1996-07-31T00:00:00+00:00 List-Id: J. Christian Blanchette (jblanc@ivic.qc.ca) wrote: : > >Assembly -> C [non-GUI] -> C-GUI -> C++ : This is really crazy! : It's maybe interesting to understand how arguments are passed on the : stack, but i strongly believe that simple high-level languages must be : learned first, and more complex one after. Since there is a performance In it's purest form, assembly is much simpler than C. Each instruction does 1 and only 1 thing (in general). If someone will spend the "blood, sweat, and tears" to learn the basics, the rest will come easily. The first alnguage I was TRULY profienct in was x86 Assembly. Then I went to Pascal, then C, and I've learned some more since then (but still prefer C for it's simple elegance). I also recomend compiled with the "generate assembly" option when a programmer first starts learning C, so really see what that codes becomes in assembly. (option is -s on most unix systems). : vs. simplicity tradeoff all along, the performance desire (usually for : graphical applications) makes people learn lower level languages. I know : many people, including myself, who made the Basic/C step for : performances. Uhh.. BASIC, I'm sorry. : C must me learned before C++, that's a point since C++ is a really more : complex superset. The first C++ "compilers" really only generated C code, and compiled it. Most C compilers still really only generate assembly, then assemble it. They don't do strait to binary/machine format. : I see no reason why learning GUI programming before OOP: in my sense : they're not related at all. I've never did any GUI app, but the concept : of multiple entry points is easy to understand, as well as that of : object-orientedness (which can be found even in C programs, although : C++/Java are more adequate). Objects are easier to udnerstand from a graphical viewpoint. A Button is an object, and Window is an object. After one fully understands that, it is easy to see how a Databae Connection can be an object. : Understanding the machine architecture is one thing, using assembly : languages is another. There's no real interest in knowing all the : mnemonics of a peculiar assembly language for a C coder: knowing how : stacks work or how system calls are performed is enough to make efficient : C programs. In the military, soldiers are taught how to disassemble guns. Why? There are people who could do that for them. If one FULLY understands the tools they are using, one can use them better. Period. : Jas. -- AJ Musgrove ---------------------------------------------------------------- My opinions do not necessarily reflect those of MFS, or anyone else for that matter. O- ----------------------------------------------------------------