🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.msdos.programmer
Article #869

Re: Newbie Wants Advice on C-Programming

#869
From: Michael Malak
Date: Fri, 25 Dec 1992 07:35
65 lines
3433 bytes
In article <1992Dec25.050515.20871@ncsu.edu> bank@lea.csc.ncsu.edu (Belgarath the Sorcerer) writes:
>    I'd like to follow-up on some subsequent Posts on this thread.
>
>2) The "Learn C or C++?" question can ONLY be answered by first
>    asking "OOP or traditional?" If you are and/or want to stay
>
>    a traditional, top-down programmer, go with C. If you want
>    to get into OOP, go with C++.

Asking "OOP or traditional" is like asking "Open end wrench or socket
set".  You use each tool where appropriate, and as I said in my previous
post, you need years of traditional C experience before you can realize
where C++'s OOP can benefit you without miring you too much in
inefficency.  If you read anyone's report of practical experience with
C++, they tell you the hard thing to learn is where _not_ to use OOP.

>
>3) If you are going to go into OOP, DO NOT start off with
>    stuff like Pascal, as one person has suggested. OOP is a
>    completely different mindset than the traditional forms used
>    by Pascal and C. The best language for learning OOP is,
>    of course, Smalltalk. I wouldn't want to DEVELOP anything
>    in Smalltalk, but if I were to start learning OOP, I think
>    that would be the best language to learn the concepts in.

The goal is to develop, not to use the wrench.

>
>4) Even if you're not going into OOP, do NOT take up Pascal as
>    a road to C. Pascal is a language that assumes you know
>    very little and places lots of restrictions and
>    inhibitions on you. If you already are a traditional-style
>    programmer, you don't need the knowledge Pascal will
>    teach you (modularization, declaration, etc). Go on into
>    C and avoid having to unlearn all the limits Pascal will
>    place on you.

Oh?  Have you ever seen C code written by a former FORTRAN programmer?
If so, by how many?  Universally you will find:
   1) Very short, illegible variable and function names, with the
      first character wasted (all integers must start with 'i', don't
      you know)
   2) No use of structures
   3) No linked lists or trees
   4) No whitespace
   5) Lots of illegible "creative" formulas
   6) No comments

As I said in my previous post, the goal a C programmer should have is to
make his program look like Pascal while knowing full well it's just
shorthand for assembly.

>
>5) Picking up Assembler prior to learning C isn't a bad idea.
>    Hardly required, tho.

It's blase attitudes such as that that are responsible for so many
bug-ridden programs.  Besides allowing one to understand what is
really going on, assembly is necessary for tracking down compiler
bugs.  In my opinion, you cannot be a real C programmer without knowing
assembly.

There is just _so_ much involved with learning C fully.  Shortcuts lead
to mediocre proficiency, which leads to disaster in a language as
unforgiving and flexible as C.
Technical Details
Message-ID: <1992Dec25.073517.16089@grebyn.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!grebyn!daily!malak
References: <1992Dec24.154204.25248@blkbox> <1992Dec24.230420.4243@sequent.com> <1992Dec25.050515.20871@ncsu.edu>

Show Full Headers
Complete Article Headers
Newsgroups: alt.msdos.programmer,comp.os.msdos.programmer,comp.sys.ibm.pc.programmer,comp.lang.c++,comp.lang.c
Path: arc1-ca.pugleaf.net!sparky!uunet!grebyn!daily!malak
From: malak@grebyn.com (Michael Malak)
Subject: Re: Newbie Wants Advice on C-Programming
Message-ID: <1992Dec25.073517.16089@grebyn.com>
Organization: Grebyn Timesharing
References: <1992Dec24.154204.25248@blkbox> <1992Dec24.230420.4243@sequent.com> <1992Dec25.050515.20871@ncsu.edu>
Date: Fri, 25 Dec 1992 07:35:17 GMT
Lines: 66