Re: why learn C?



1. C gives you a strong base of Procedural style of programming which
forms the basis of learning other paradigms e.g OOP

I am not sure that C gives better 'strong base' than Ada.


OK, 1st have to Google for Ada as i never came across some Ada-code. i
never even read about its design-goals and/or any articles related to
it.

BTW, your "summary of Ada" can be useful for me, if you can.


2. with C one will learn about pointers and algorithms.

pointers: yes
algorithms: why ?

why not ?

1. i tried some Common Lisp where i never had to worry about
algorithms.

2. in C++, you get read-made algorithms from Standard Library, so
around 95% of the times, you only need to do "#include<algorithm>".

whereas in C, you have design the algorithms, from scratch.

but may be i am biased, as i did not take the case of other languages
like OCaml, Haskell, Mercury or Eiffel here.



" i think algorithms and data-structures are more important than
learning a new programming language.

[SNIP]

/arnuld/ is not an experienced programmer, so i feel difficulty in
believing his words. i want to know the views of people here,a s much
of the post belong to C.

On algorithms: it depends what mean 'learning about algorithms'.

i meant, "applying the specific algorithm, in the language your are
working with".


[SNIP]
Moreover, I do not know how to learn 'abstraction, software design and
problem solving' without any langage.

you can't. what i meant is:

abstraction, software-design & problem-solving are independent of any
programming language *and* you learn all of these by applying them in
a programming language, just like algorithms."


i think that was obvious.

Moreover, I am under the
impression that the 'good' software design is not langage-independant.

good software design is language-independent,as i said already, *and*
some programming languages are a not a good-fit for a particular
design but a perfect-fit for some other designs.

At leats, learning C is usefull because the is C, a kind of universal
programming langage known by all, a little bit like 'English' in
natural langages.

Is this the only benefit you think of C (except pointers) ?

i guess, there are more.


BTW, thanks for the critique.

-- arnuld
http://arnuld.blogspot.com

.



Relevant Pages

  • Re: why learn C?
    ... is, to me, a very good langage to learn procedural programming. ... algorithms: why? ... a programming language, just like algorithms." ... impression that the 'good' software design is not langage-independant. ...
    (comp.lang.c)
  • Re: why learn C?
    ... Because whatever programming language you are using you are using algorithms, ... then I can find other algorithms I have needed which are *not* part of which ever language you choose to select. ... If you are implementing a design that has been produced and reviewed by others then there is sod all algorithm development to do whatever language you are working in. ...
    (comp.lang.c)
  • Re: [PROPOSAL/PATCH] Fortuna PRNG in /dev/random
    ... was good not to rely *entirely* on the ahsh algorithms. ... The point is that the current random.c design DOES NOT ... RELY on the security of the hash function. ... plaintext that's not one of the two. ...
    (Linux-Kernel)
  • Re: simple math question
    ... computer science, algorithms and math, let alone crypto, should NOT be ... Each design incorporated a new design idea, from SPNs to feistels, ... differential cryptanalysis, linear cryptanalysis, etc, papers you're ...
    (sci.crypt)
  • Re: OOP/OOD Philosophy
    ... languages only in a procedural way). ... > "structured design" and an UML class diagram. ... > Referent to the "infinite sets" want to say that some time ago a went to ... You have a series of algorithms ...
    (comp.object)