comp.lang.ada
 help / color / mirror / Atom feed
From: "Elias Salomão Helou Neto" <eshneto@gmail.com>
Subject: Re: Fun with C
Date: Thu, 21 Apr 2011 09:19:08 -0700 (PDT)
Date: 2011-04-21T09:19:08-07:00	[thread overview]
Message-ID: <4b5748dc-60fa-4cec-a317-054626e9a1ca@d19g2000prh.googlegroups.com> (raw)
In-Reply-To: ionpde$equ$1@munin.nbi.dk

> We're not talking about C specifically, we're talking about "a new
> language".

New to the programmer or to the world? If it is the former, I still
recommend a book. A textbook will take you from the basics to the more
advanced features of the language. This is the way to learn. By
skipping the first steps people simply won't know the most basic
stuff, such as C's type promotions.

Instead, people like to program by "trial and error". Which will
rarely, if ever, work.

>
> >> We wrote a partial Ada *compiler* back in
> >> 1980 from a description circulated by our professor (Janus/Ada originally
> >> started in a compiler construction course).
>
> >Surely the first Ada compiler you wrote wasn't coded in Ada itself.
> >Haven't you read any book about the language used to code the compiler
> >before?
>
> Sure, but irrelevant, since we had to create test programs for the compiler
> in Ada (gotta test that it works), and that requires some understanding of
> the language.

Not at all irrelevant. Test programs are not real-life programs, while
a compiler surely is. Furthermore, the language description you had
from your professor had to be deeply studied in order to get the
compiler working. So you've had to learn from the most basic to the
most advanced feature of the language.

> Depends on what you meant by "good book". A raw language description (as in
> the professor's handful of mimographed sheets) or even the Ada Reference
> Manual doesn't seem to be a "good book" about programming in the language. I
> had presumed that you meant "textbook" when you said "book".

Ok.

> Go back and re-read the statement that you made: "...but not without a good
> book to read while practicing.". I disagree with this statement as written,
> and I explained why. I also didn't feel any need to insult you when
> disagreeing with you, which does not help your point any.

Did I insult you? Sorry if I did. But I keep the reasoning: go and
read a book before programming. One that progressively goes from the
basic to the advanced features in a reasonable way.

You are a talented programmer and learned Ada from a description. But
you did not start to write random code in Ada. You had a solid
foundation on it because you had to be precise when writing the
compiler. I am sure you will notice how different it is from just
"starting coding and making it compile".

> These days, I hardly expect anyone to expect requiring a "book" to do
> anything. Even counting "e-books" as "books", there are a lot of information
> sources which have nothing to do with "books". It was a lot harder to
> understand back in 1981, yet it still happened then (and even then there
> were a lot of information sources having nothing to do with books - papers,
> magazine articles, seminars, lectures, computer-aided-instruction).

I still do not recommend any of those as means for a beginner to learn
a language: papers are not for beginners; magazine articles are too
vague or too specific; seminars are usually too short to be of any use
for beginners and they are, decause of being short, focused on a too
narrow or too vague subject; lectures are good, but good lecturers
will likely indicate a bibliography, which will include textbooks if
it is intended to beginners. Perhaps computer-aided-instruction, but I
haven't seen it in use, so I do not recommend it.

Remember, I am a professor. I do lecture and present seminars. And no,
seminars won't teach you how to program. Neither will the lectures,
unless followed by laboratory classes and homeworks, which should be
done alongside a good book on the subject. Honestly, I do not like
students taking notes of my lectures, they should be paying attention
and latter they should use the recommended book as a reference. Unless
I've explicitly stated otherwise.

> >After writing an Ada compiler it is very unlikely for someone not to
> >know the language. There are lots of C textbooks, why not to use them?
> >Nonsense.
>
> We're not talking about C specifically, we're talking about "a new language"
> in general.

I don't get it. Which new language may someone want to learn for which
there is no good textbook available? Again, do you mean "new to the
programmer" or "new to the world"?

> And I doubt I would *buy* a textbook these days; pretty much everything one
> needs is on-line (and often not in the form of a book!).

Even though there is plenty information on the internet, books are
still worth buying, I am sure of that. You can't (legally) find the
really good textbooks on-line neither you can find anything comparable
to those textbooks. Good information still has its price.

As a test, find me a replacement for "C++ Primer" on-line.

> >Also, please notice that I've recommended a book for those that are
> >learning the language, not for those who have already mastered it (but
> >even so a good reference manual is invaluable).
>
> Again, I don't give a hose about C; I see no reason to waste my time with
> obscure language wars. (Ada is best, and that's it. :-)

It is true that I said "learning _the_ language" and that it referred
to C, but it surely applies to any language.

> Maybe *you* have to fight it. I happen to think that a language that is
> unnecessarily different than what a typical programmer would expect is
> dangerous. (And yes, Ada suffers from this in a few places as well -- and
> those things are also dangerous.)

Ops. I think you're wrong here. Programming languages _must_ be
different from each other, otherwise there would not be reason for so
many to exist. And some new, useful, paradigms appear that can't be
natural to any programmer simply because it did not exist before its
invention!

> I don't claim to know C (anymore), but that doesn't prevent me from hating
> it. :-)

I did not mean that you claim to do so, but that other did when they
should not.

> I realize this is somewhat irrational, which is why I try to stay out of
> language wars -- there is no way to win (I'm more likely to marry a
> supermodel than I am to change my mind about C! :-)

I am not quite into language wars too. I have never advocated one
language over another, just look at my posts above. So, forget C and
good luck in marrying a supermodel. When it happens, if she has any
friends, please introduce me to them :-)

Elias



  reply	other threads:[~2011-04-21 16:19 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-16 17:02 Fun with C George P.
2011-04-16 20:04 ` Nasser M. Abbasi
2011-04-16 21:12   ` Ludovic Brenta
2011-04-16 21:42     ` jimmaureenrogers
2011-04-17  7:17     ` Georg Bauhaus
2011-04-17  8:29       ` Martin
2011-04-17 18:19       ` George P.
2011-04-17  8:40     ` Georg Bauhaus
2011-04-18  1:04     ` Peter C. Chapin
2011-04-18  2:14       ` George P.
2011-04-16 22:03   ` George P.
2011-04-17  6:26 ` KK6GM
2011-04-17  6:59   ` Georg Bauhaus
2011-04-17 16:15     ` KK6GM
2011-04-17 19:35       ` Elias Salomão Helou Neto
2011-04-17 20:18         ` KK6GM
2011-04-18 19:47           ` Elias Salomão Helou Neto
2011-04-18 22:11             ` Peter C. Chapin
2011-04-17 22:26         ` Georg Bauhaus
2011-04-18 19:12           ` Elias Salomão Helou Neto
2011-04-18 20:56             ` KK6GM
2011-04-18 21:01             ` Georg Bauhaus
2011-04-18 21:20               ` Nasser M. Abbasi
2011-04-19  2:43                 ` George P.
2011-04-19 18:05                   ` Vinzent Hoefler
2011-04-19 19:34                     ` George P.
2011-04-19 20:08                       ` Georg Bauhaus
2011-04-19  1:10               ` Elias Salomão Helou Neto
2011-04-19 14:28                 ` Georg Bauhaus
2011-04-19 17:40                   ` Jeffrey Carter
2011-04-21 14:52                   ` Elias Salomão Helou Neto
2011-04-21 18:58                     ` Georg Bauhaus
2011-04-21 19:27                       ` Hyman Rosen
2011-04-28  5:13                         ` David Thompson
2011-04-28 13:41                           ` Hyman Rosen
2011-05-05  8:39                             ` David Thompson
2011-04-25 11:06                 ` Paul Colin Gloster
2011-04-25 11:00                   ` Georg Bauhaus
2011-04-25 12:12                     ` Martin
2011-04-25 18:39                       ` Paul Colin Gloster
2011-05-08 23:41           ` wilso
2011-05-20 10:41             ` Yannick Duchêne (Hibou57)
2011-05-20 16:04               ` Yannick Duchêne (Hibou57)
2011-04-18  0:12         ` George P.
2011-04-18 19:24           ` Elias Salomão Helou Neto
2011-04-19  1:22             ` George P.
2011-04-19  2:06               ` Elias Salomão Helou Neto
2011-04-19  2:37                 ` Bill Findlay
2011-04-19  3:00                 ` George P.
2011-04-17 19:19 ` Elias Salomão Helou Neto
2011-04-17 23:26   ` Gautier write-only
2011-04-17 23:43     ` Nasser M. Abbasi
2011-04-18 19:16       ` Elias Salomão Helou Neto
2011-04-18 23:10         ` Randy Brukardt
2011-04-19  1:36           ` Elias Salomão Helou Neto
2011-04-20 23:14             ` Randy Brukardt
2011-04-21 16:19               ` Elias Salomão Helou Neto [this message]
2011-04-21 17:36                 ` Dmitry A. Kazakov
2011-04-21 17:43                   ` Hyman Rosen
2011-04-21 19:44                     ` Dmitry A. Kazakov
2011-04-22  6:16                   ` Elias Salomão Helou Neto
2011-04-22  9:21                     ` Dmitry A. Kazakov
2011-04-22 13:18                       ` Hyman Rosen
2011-04-22 15:17                         ` Dmitry A. Kazakov
2011-04-23  2:08                       ` Elias Salomão Helou Neto
2011-04-23  7:23                         ` Dmitry A. Kazakov
2011-04-23  9:42                           ` Georg Bauhaus
2011-04-23 10:23                             ` Dmitry A. Kazakov
2011-04-23 18:37                           ` Elias Salomão Helou Neto
2011-04-23 21:36                             ` Dmitry A. Kazakov
2011-04-24 11:27                               ` Peter C. Chapin
2011-04-24 13:53                                 ` Dmitry A. Kazakov
2011-04-24 19:07                                   ` Nasser M. Abbasi
2011-04-24 19:46                                     ` Dmitry A. Kazakov
2011-04-24 21:20                                       ` Nasser M. Abbasi
2011-04-24 22:33                                         ` Elias Salomão Helou Neto
2011-04-25  7:09                                         ` Dmitry A. Kazakov
2011-04-25 20:46                                           ` Maciej Sobczak
2011-04-25 21:19                                             ` George P.
2011-04-26  6:18                                             ` Dmitry A. Kazakov
2011-04-26  6:58                                               ` Nasser M. Abbasi
2011-04-26  8:39                                                 ` Dmitry A. Kazakov
2011-04-26 20:57                                               ` Maciej Sobczak
2011-04-27  8:00                                                 ` Dmitry A. Kazakov
2011-04-27  8:19                                                   ` Georg Bauhaus
2011-04-27  9:32                                                     ` Dmitry A. Kazakov
2011-04-28  7:02                                                   ` Maciej Sobczak
2011-04-28  7:41                                                     ` Dmitry A. Kazakov
2011-04-28 10:24                                                       ` Peter C. Chapin
2011-04-28 13:56                                                         ` Dmitry A. Kazakov
2011-05-03  1:19                                                           ` Nasser M. Abbasi
2011-05-03  6:05                                                             ` J-P. Rosen
2011-05-03  6:15                                                               ` Ludovic Brenta
2011-05-03  7:43                                                                 ` Dmitry A. Kazakov
2011-05-03 15:34                                                               ` Bill Findlay
2011-05-03  7:53                                                             ` Georg Bauhaus
2011-05-03  9:29                                                             ` Simon Wright
2011-04-24 22:23                                       ` Elias Salomão Helou Neto
2011-04-25  7:10                                         ` Dmitry A. Kazakov
2011-04-24 20:37                                 ` Georg Bauhaus
2011-04-23 15:23                         ` George P.
2011-04-23 17:28                           ` Nasser M. Abbasi
2011-04-23 17:52                             ` Dmitry A. Kazakov
2011-04-23 18:11                               ` Nasser M. Abbasi
2011-04-23 20:47                               ` George P.
2011-04-24 11:36                                 ` Peter C. Chapin
2011-04-25 11:43                                   ` Paul Colin Gloster
2011-04-23 16:56                         ` Nasser M. Abbasi
2011-04-23 18:45                           ` Elias Salomão Helou Neto
2011-04-22 12:15                     ` J-P. Rosen
2011-04-22 14:56                       ` Niklas Holsti
2011-04-21 23:29                 ` Randy Brukardt
2011-04-22  6:29                   ` Elias Salomão Helou Neto
2011-04-25 11:22                 ` Paul Colin Gloster
2011-04-18 19:13     ` Elias Salomão Helou Neto
2011-04-20  5:11   ` J-P. Rosen
2011-04-20 15:45     ` KK6GM
2011-04-20 19:04     ` Vinzent Hoefler
2011-04-20 21:09       ` Georg Bauhaus
2011-04-20 22:52         ` Vinzent Hoefler
2011-04-21 14:18     ` Elias Salomão Helou Neto
2011-04-21 16:22       ` Vinzent Hoefler
2011-04-21 19:25         ` John B. Matthews
2011-04-23 23:07 ` Gerd
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox