Off topic C question

Siegfried Gonzi siegfried.gonzi at kfunigraz.ac.at
Tue Apr 9 04:06:01 EDT 2002


Laura Creighton wrote:
> 
> > I know this is way off topic, but I figure the heavy hackers here will
> > understand my mindset better than those at comp.lang.C
> >     I have been doodling with python (nasty habit I know but I have to
> > do somthing with my snake) and think I may be ready to learn a second
> > language.  I am leaning towards C over C++ and Java even though I
> > loose objects it will ground me firmly in functional programing.
> 
> If you want to learn 'functional programming' then C is not the place.
> I recommend Haskell. 

If it is only for the sake of his learning experience: he should go with
Clean. Maybe I am a little bit biased but installing Clean (on Unix,
Macintosh and Windows) is matter of a few minutes.

If he goes with Haskell it is likely that the performance issue will
come in the way; and here Clean (without the need of C) really shines.
In Haskell it is possible too, but only with the help of a C compiler.

I am not sure whether they (Haskell) upgraded their monadic I/O stuff
but sooner or later he will mabye become scared of the monadic part.
Clean here has something like the operater "<<" (as in C++) and this
without side effects.

So, this only holds true for the learning part. If you want to use
functional programming in your work Clean will become more or less a
hindrance (I would say: There is some purity  --not only that there are
only 10 users in Europe-- but Clean is useless on a daily basis). 


>  However, if your real goal is
> to hack C, and all the above is just one misused word -- you want
> K & R.  Everybody wants K & R.  

Not really. This book is really,really boring.

And it is a "clash of paradigms" if you were used to functional (or
Python and the like) programming first. 

There is a good book out there: "Teach C++ yourself in 21 days". That
"21 days" is ridiculous but nonetheless the book teaches a good style
and the book includes a Microsoft C++ 6 compiler. The chapter about
input/output is a little bit scarce.


S. Gonzi



More information about the Python-list mailing list