comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Fun with C
Date: Fri, 22 Apr 2011 11:21:53 +0200
Date: 2011-04-22T11:21:54+02:00	[thread overview]
Message-ID: <1hnl95prvrt6i$.1s675gncbjxsu$.dlg@40tude.net> (raw)
In-Reply-To: 2118e788-7b3e-4d25-8d0f-5e60498e3a3b@cu4g2000vbb.googlegroups.com

On Thu, 21 Apr 2011 23:16:47 -0700 (PDT), Elias Salom�o Helou Neto wrote:

> On Apr 21, 2:36�pm, "Dmitry A. Kazakov" <mail...@dmitry-kazakov.de>
> wrote:
>> On Thu, 21 Apr 2011 09:19:08 -0700 (PDT), Elias Salom o Helou Neto wrote:
>>
>>> 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!
>>
>> Nope. A counterexample is natural languages. There are many of them. They
>> are different in some senses and same in others. Languages existed before
>> poetry, novels, scripts and graffiti were invented.
>> I doubt that a language (natural or formal) can be designed for new
>> paradigms.
>> Rather it is so that so-called "paradigms" are imprinted in our
>> brains and languages just reflect the ways we are thinking.
> 
> Could you please elaborate on that? I understand (and mostly agree
> with) your claim that all paradigms are imprinted in our brains, but
> I'd rather still call one of them new if it is the first time it is
> actually explicitly stated and used for a purpose such as designing a
> programming language.

I think that all significant paradigms are already stated. All languages we
are talking about are equivalent in terms of Turing completeness. Paradigms
are of course finer than that, but still I believe that there is nothing
significantly new left. All these agent-, aspect-, cloud-, extreme-,
whatever stuff was known and used before 1980.

>> This, I think,
>> can explain popularity of such outrageously poor languages like C. C
>> programmers are in majority simply because most of programmers do think as
>> they write.
> 
> Yep. That's a major problem. No matter how much I try to teach people
> to think before coding, they won't do so.

Not every man or woman can program. I doubt that programming should be
taught to people specializing on other majors. Sorry guys, programming is
not a modern lingua franca.

> But I don't think that Ada
> makes it any better, does it? It is not a claim, since I could not do
> it without knowing Ada, but rather a truly interested question.

I agree. Ada is a tool, it is no cure.

Nevertheless, future professional programmers should never be exposed to C
as the first language. It is like teaching physics in the school. Pupils
first learn the physics of XIX century. When they made 3/4, they are told:
guys, that was wrong! Here is how it goes! Programmers must learn concepts
and techniques which C cannot illustrate. What C can illustrate is how not
to program.

> And I fail to see why is C so "outrageously poor". My view is that
> professional programmers deserve much more this epithet than C does.
> Remember all those guys you've interviewed that couldn't mentally do
> an XOR with 0xFF? My tendency is to say they're the ones who are
> "outrageously poor".

One poor with another poor does not make it good. My point is that poor
programmers prefer poor languages. Both are in majority and without
selection this state will maintain itself infinitely. So the first step for
programming to become engineering will be deliberate extermination of
certain language features and practices, which dominate in C. Having said
that, I don't claim that Ada is that ideal language. It is a long way
ahead. Even so, there is no reason to look back trying to move forward.

> Of course this is a rather good justification for Ada to be more
> widely adopted. As I've said elsewhere on this thread, Ada's premises
> are far more realistic than C's ones. But it does not make C a lame
> language.

C is poor for teaching because it takes too much noise to illustrate basic
programming concepts like array, string, result of a function etc. It is
full of silly limitations, which programmers must learn to circumvent,
before they get at the core ideas. In the end they learn only these tricks
and think that programming is about that, lacking understanding of software
engineering as a whole.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2011-04-22  9:21 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
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 [this message]
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