comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@comcast.net>
Subject: Re: Standard Ada Preprocessor
Date: Mon, 26 Jan 2004 19:00:02 -0500
Date: 2004-01-26T19:00:02-05:00	[thread overview]
Message-ID: <VZedne8ENeKeN4jdRVn-vg@comcast.com> (raw)
In-Reply-To: <F_fRb.4027$qU3.176378@news20.bellglobal.com>

Warren W. Gay VE3WWG wrote:

> As said before, I prefer a portable platform neutral code
> as much as the next guy. But when you start writing bindings
> and such that must bind to _many_ different situations,
> this simply becomes impractical.

I feel here like I am being castigated for something I have never said. 
  (No, I am not saying Warren is attacking me, just that I have the 
feeling that I am not getting my point across.)

The problem is that there is an underlying philosophical difference, and 
until and unless you accept the "Ada" philosophy you will be 
uncomfortable programming in Ada.  Once you "get it" Ada becomes as 
comfortable as well broken-in shoe.  There are still some minor lumps 
and bumps--but you don't notice them.

For a second assume that there are things that do require a preprocessor 
to do in Ada.  Now look at the long debate here, from the point of view 
that one group uses preprocessor directives in with clauses and the 
public part of packages, while I argue that this is poor programming 
practice and that all preprocessor directives belong in unit bodies 
where possible, and as few such bodies as possible.

And actually that IS the way I feel.  With one minor exception.  When 
you do the necessary work to collect all of the pre-processor decorated 
code in one spot, surprise!  There isn't any left.

But there is really a trick to this, and it is important to understand. 
  In the military the problem is known as micro-management.  Problems 
and issues should be addressed at the right level, without solutions 
imposed from above which may not be appropriate in a particular situation.

In Ada where this often comes up is in representation clauses.  You 
either tell the compiler to "do it right" with alignment directives, or 
lay things out bit-by-bit with rep clauses.  If there is an 
implementation INdependent format you have to follow, sometimes because 
you are interfacing directly to some special-purpose hardware.  Fine, 
use static layouts.  But these are, by their nature not compiler 
dependent in any way.  The hardware you interface with, or the other 
computer system you interface with, or whatever, specifies the layout. 
If some compiler can't support those rep clauses, it is not time for 
preprocessor directives, it is time to either fix the compiler or get a 
new one.  The bits MUST look exactly like that, it is not an option.

The second case is where you want the bits laid out a certain way for 
efficiency.  Fine, no problem...and no rep clause required or needed. 
That is the compiler's job.  You may use alignment clauses and specify 
that some components are aliased, but the compiler will take all that 
into account when it lays out the record.  If two compilers do it 
differently on different hardware because, say, Integer is a different 
size?  Not a problem.  If you needed the records to be identical on 
different hardware, you would have specified things that way.

So as far as I am concerned, the case of rep specs that compile on one 
compiler and not on another is almost uninteresting.  If you care, it is 
a big problem.  But it has to be fixed by fixing (or replacing) one 
compiler.  A pre-processor CAN'T help.  If you are trying to use 
pre-processor directives to force efficient layouts on each different 
platform, you are micro-managing.  Let each compiler choose the layout 
it thinks is best.

-- 
                                           Robert I. Eachus

"The war on terror is a different kind of war, waged capture by capture, 
cell by cell, and victory by victory. Our security is assured by our 
perseverance and by our sure belief in the success of liberty." -- 
George W. Bush




  reply	other threads:[~2004-01-27  0:00 UTC|newest]

Thread overview: 294+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-17 11:15 why ada is so unpopular ? Szymon Guz
2004-01-17 13:53 ` Martin Dowie
2004-01-17 14:27 ` Dmytry Lavrov
2004-01-17 21:02   ` Szymon Guz
2004-01-17 22:36     ` Adrian Knoth
2004-01-18  9:21       ` Szymon Guz
2004-01-18 12:18         ` Luke A. Guest
2004-01-18 13:09           ` Ronald Dauster
2004-01-18 12:59         ` Ronald Dauster
2004-01-18 13:25           ` Stephane Richard
2004-01-18 14:17           ` Szymon Guz
2004-01-18 14:42             ` Marin David Condic
2004-01-18 15:23               ` Szymon Guz
2004-01-18 17:53                 ` Jeffrey Carter
2004-01-18 16:34               ` Preben Randhol
2004-01-19 12:59                 ` Marin David Condic
2004-01-19 13:06                   ` Preben Randhol
2004-01-19 13:28                     ` Marin David Condic
2004-01-19 13:37                       ` Preben Randhol
2004-01-20 12:38                         ` Marin David Condic
2004-01-20 17:31                           ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Warren W. Gay VE3WWG
2004-01-20 18:50                             ` Standard Ada Preprocessor Georg Bauhaus
2004-01-26  4:00                               ` Peter Richtmyer
2004-01-26  5:01                                 ` tmoran
2004-01-26 12:01                                 ` Marin David Condic
2004-02-01 15:09                               ` Mark
2004-02-01 19:10                                 ` Frank J. Lhota
2004-02-02 16:48                                   ` Martin Krischik
2004-02-02 18:22                                     ` Frank J. Lhota
2004-01-21 12:39                             ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Marin David Condic
2004-01-21 13:12                               ` Standard Ada Preprocessor Georg Bauhaus
2004-01-22  0:05                               ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Robert I. Eachus
2004-01-22  5:59                                 ` Randy Brukardt
2004-01-22 12:58                                   ` Marin David Condic
2004-01-22 17:25                                     ` Warren W. Gay VE3WWG
2004-01-23 12:24                                       ` Marin David Condic
2004-01-23 13:46                                         ` Dmitry A. Kazakov
2004-01-23 17:16                                           ` Warren W. Gay VE3WWG
2004-01-23 17:52                                             ` Jeffrey Carter
2004-01-23 21:57                                               ` Warren W. Gay VE3WWG
2004-01-24  0:52                                                 ` Jeffrey Carter
2004-01-26 17:19                                                   ` Warren W. Gay VE3WWG
2004-01-27 12:24                                                     ` Marin David Condic
2004-01-27 19:03                                                       ` Standard Ada Preprocessor Georg Bauhaus
2004-01-24  1:34                                                 ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Marin David Condic
2004-01-26 17:27                                                   ` Warren W. Gay VE3WWG
2004-01-27 12:30                                                     ` Marin David Condic
2004-01-24  8:20                                                 ` Pascal Obry
2004-01-26 17:29                                                   ` Warren W. Gay VE3WWG
2004-01-23 17:56                                             ` Larry Hazel
2004-01-24  1:36                                               ` Marin David Condic
2004-01-23 22:14                                             ` Randy Brukardt
2004-01-23 22:42                                               ` tmoran
2004-01-26 17:50                                               ` Warren W. Gay VE3WWG
2004-01-26 18:54                                                 ` Standard Ada Preprocessor Jeffrey Carter
2004-01-26 21:53                                                   ` Warren W. Gay VE3WWG
2004-01-27  0:00                                                     ` Robert I. Eachus [this message]
2004-01-27 17:30                                                       ` Warren W. Gay VE3WWG
2004-01-27 20:55                                                         ` Robert A Duff
2004-01-27 22:03                                                           ` Robert I. Eachus
2004-01-28 12:28                                                           ` Marin David Condic
2004-01-28 20:55                                                             ` Simon Wright
2004-01-29 12:40                                                               ` Marin David Condic
2004-01-29 18:08                                                                 ` Jeffrey Carter
2004-01-30 12:30                                                                   ` Marin David Condic
2004-01-29 20:45                                                                 ` Simon Wright
2004-01-29 23:12                                                                   ` Randy Brukardt
2004-01-30 13:09                                                                     ` Marin David Condic
2004-01-30 18:06                                                                       ` Jeffrey Carter
2004-01-31  8:11                                                                         ` Marin David Condic
2004-01-30 12:36                                                                   ` Marin David Condic
2004-01-30 16:52                                                             ` Pascal Obry
2004-01-31  8:25                                                               ` Marin David Condic
2004-01-27 21:04                                                         ` Randy Brukardt
2004-01-28 12:42                                                           ` Marin David Condic
2004-01-27 12:48                                                 ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Marin David Condic
2004-01-26  9:34                                             ` Dmitry A. Kazakov
2004-01-26 19:23                                               ` Randy Brukardt
2004-01-23  2:47                                     ` Robert I. Eachus
2004-01-23 12:38                                       ` Marin David Condic
2004-01-24  5:23                                         ` Robert I. Eachus
2004-01-24 12:28                                           ` Marin David Condic
2004-01-24 15:32                                             ` Robert I. Eachus
2004-01-24 15:43                                               ` Marin David Condic
2004-01-25  4:24                                                 ` Robert I. Eachus
2004-01-25 16:24                                                   ` Marin David Condic
2004-01-29 11:17                                                 ` Jacob Sparre Andersen
2004-01-29 12:52                                                   ` Marin David Condic
2004-01-26 18:03                                           ` Warren W. Gay VE3WWG
2004-01-26 19:14                                             ` Standard Ada Preprocessor Jeffrey Carter
2004-01-26 22:04                                               ` Warren W. Gay VE3WWG
2004-01-27  1:00                                                 ` Jeffrey Carter
2004-01-27  8:35                                                   ` Ole-Hjalmar Kristensen
2004-01-27 11:09                                                     ` Georg Bauhaus
2004-01-27 15:22                                                       ` Ole-Hjalmar Kristensen
2004-01-27 15:54                                                       ` Robert I. Eachus
2004-01-27 18:00                                                         ` Warren W. Gay VE3WWG
2004-01-27 19:19                                                           ` David Starner
2004-01-27 20:08                                                             ` Ludovic Brenta
2004-01-27 20:19                                                             ` Georg Bauhaus
2004-01-27 20:58                                                             ` Randy Brukardt
2004-01-27 22:13                                                             ` Simon Wright
2004-01-27 23:04                                                               ` David Starner
2004-01-28  1:41                                                                 ` Jeffrey Carter
2004-01-28  2:26                                                                 ` Georg Bauhaus
2004-01-28  2:50                                                                 ` Stephen Leake
2004-01-28  3:21                                                                   ` Jeff C,
2004-01-28  3:57                                                                   ` David Starner
2004-01-29  3:03                                                                     ` Stephen Leake
2004-01-29  7:20                                                                       ` David Starner
2004-01-29 11:14                                                                         ` Georg Bauhaus
2004-01-29 18:56                                                                           ` David Starner
2004-01-29 19:41                                                                             ` Georg Bauhaus
2004-01-29 12:57                                                                       ` Marin David Condic
2004-01-29 13:51                                                                         ` Preben Randhol
2004-01-30  2:46                                                                           ` Robert I. Eachus
2004-01-28 20:34                                                                   ` Michael Bode
2004-01-29  3:06                                                                     ` Stephen Leake
2004-01-28 12:50                                                             ` Marin David Condic
2004-01-27 20:44                                                           ` Randy Brukardt
2004-01-27 22:15                                                           ` Alexandre E. Kopilovitch
2004-01-29 17:31                                                             ` Standard Ada Preprocessor (conclusions) Warren W. Gay VE3WWG
2004-01-29 19:44                                                               ` Georg Bauhaus
2004-01-30 13:25                                                               ` Marin David Condic
2004-01-30 13:29                                                                 ` Lutz Donnerhacke
2004-01-30 13:53                                                                   ` Marin David Condic
2004-01-30 14:14                                                                     ` Lutz Donnerhacke
2004-01-27 19:11                                                         ` Standard Ada Preprocessor Jeffrey Carter
2004-01-27 21:48                                                         ` Alexandre E. Kopilovitch
2004-01-28 16:26                                                           ` Robert I. Eachus
2004-01-29  2:51                                                             ` Alexandre E. Kopilovitch
2004-01-29 11:19                                                               ` Georg Bauhaus
2004-01-29 22:02                                                                 ` Nature of XML (was: Re: Standard Ada Preprocessor) Alexandre E. Kopilovitch
2004-01-30  8:53                                                                   ` Preben Randhol
2004-01-30 17:35                                                                     ` Alexandre E. Kopilovitch
2004-01-30 19:13                                                                       ` Preben Randhol
2004-01-31 16:04                                                                         ` Alexandre E. Kopilovitch
2004-01-31 16:45                                                                           ` Preben Randhol
2004-01-30 18:49                                                                   ` Nature of XML Georg Bauhaus
2004-01-30 19:16                                                                     ` Marius Amado Alves
2004-01-30 22:59                                                                       ` Georg Bauhaus
2004-01-31  1:26                                                                         ` Robert I. Eachus
2004-01-31 13:08                                                                           ` Nature of XML (ramblings) Marius Amado Alves
2004-01-31 18:14                                                                             ` Georg Bauhaus
2004-02-03  1:35                                                                           ` Nature of XML Robert C. Leif
2004-02-03 14:23                                                                             ` Georg Bauhaus
2004-01-27 17:50                                                     ` Standard Ada Preprocessor Warren W. Gay VE3WWG
2004-01-27 20:42                                                       ` Randy Brukardt
2004-01-27 21:41                                                         ` Warren W. Gay VE3WWG
2004-01-28  9:10                                                           ` Dmitry A. Kazakov
2004-01-29 17:39                                                             ` Warren W. Gay VE3WWG
2004-01-28 23:21                                                           ` Randy Brukardt
2004-01-29 17:46                                                             ` Warren W. Gay VE3WWG
2004-01-30  3:20                                                             ` Robert I. Eachus
2004-01-28 12:27                                                       ` Ole-Hjalmar Kristensen
2004-01-29 17:53                                                         ` Warren W. Gay VE3WWG
2004-01-27 17:33                                                   ` Warren W. Gay VE3WWG
2004-01-27 19:07                                                     ` Jeffrey Carter
2004-01-27 21:42                                                       ` Warren W. Gay VE3WWG
2004-01-27  2:35                                                 ` Randy Brukardt
2004-01-27 21:47                                                   ` Warren W. Gay VE3WWG
2004-01-28  1:19                                                     ` Jeffrey Carter
2004-01-28 12:30                                                       ` Ole-Hjalmar Kristensen
2004-01-28 23:35                                                     ` Randy Brukardt
2004-01-29 10:16                                                       ` Ole-Hjalmar Kristensen
2004-01-29 17:58                                                       ` Warren W. Gay VE3WWG
2004-01-29 23:19                                                         ` Randy Brukardt
2004-01-27  3:54                                                 ` Jeffrey Carter
2004-01-27 21:53                                                   ` Warren W. Gay VE3WWG
2004-01-28  1:27                                                     ` Jeffrey Carter
2004-01-29 18:02                                                       ` Warren W. Gay VE3WWG
2004-01-28 20:35                                                     ` Pascal Obry
2004-01-29  0:53                                                       ` Jeffrey Carter
2004-01-28 23:41                                                     ` Randy Brukardt
2004-01-29 18:04                                                       ` Warren W. Gay VE3WWG
2004-01-30  2:33                                                       ` Chad R. Meiners
2004-01-30 18:00                                                         ` Warren W. Gay VE3WWG
2004-01-30 22:52                                                           ` Blinking text Chad R. Meiners
2004-02-06 17:14                                                             ` Warren W. Gay VE3WWG
2004-01-27  7:41                                                 ` Standard Ada Preprocessor Pascal Obry
2004-01-27 21:53                                                   ` Warren W. Gay VE3WWG
2004-01-27  0:06                                               ` Robert I. Eachus
2004-01-27 21:55                                                 ` Warren W. Gay VE3WWG
2004-01-28  1:34                                                   ` Jeffrey Carter
2004-01-30 17:19                                                     ` Warren W. Gay VE3WWG
2004-01-30 19:06                                                       ` Frank J. Lhota
2004-02-10 11:18                                                         ` stephen.freeman9
2004-02-10 17:45                                                           ` Language Design (was Standard Ada Preprocessor) Warren W. Gay VE3WWG
2004-01-27  0:17                                               ` Standard Ada Preprocessor Alexandre E. Kopilovitch
2004-01-26 23:44                                             ` Georg Bauhaus
2004-01-27 22:04                                               ` Warren W. Gay VE3WWG
2004-01-28  2:47                                                 ` Georg Bauhaus
2004-01-30 17:29                                                   ` Warren W. Gay VE3WWG
2004-01-30 19:06                                                     ` Georg Bauhaus
2004-01-31  8:42                                                     ` Marin David Condic
2004-02-02 17:28                                                       ` Warren W. Gay VE3WWG
2004-01-27  0:15                                             ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Robert I. Eachus
2004-01-27 22:05                                               ` Warren W. Gay VE3WWG
2004-01-24  8:17                                         ` Pascal Obry
2004-01-24 12:44                                           ` Marin David Condic
2004-01-24 15:39                                             ` Robert I. Eachus
2004-01-24 16:06                                               ` Marin David Condic
2004-01-26 11:28                                             ` Ole-Hjalmar Kristensen
2004-01-26 12:07                                               ` Marin David Condic
2004-01-23 16:38                                       ` Alexandre E. Kopilovitch
2004-01-23 17:54                                         ` Jeffrey Carter
2004-01-23 17:24                                       ` Warren W. Gay VE3WWG
2004-01-23 22:30                                         ` Randy Brukardt
2004-01-26 22:11                                           ` Warren W. Gay VE3WWG
2004-01-27  0:28                                             ` Robert I. Eachus
2004-01-27 22:13                                               ` Warren W. Gay VE3WWG
2004-01-27  1:02                                             ` Jeffrey Carter
2004-01-22 14:13                                   ` Robert A Duff
2004-01-22 17:27                                     ` Warren W. Gay VE3WWG
2004-01-23 12:54                                       ` Marin David Condic
2004-01-23 17:26                                         ` Warren W. Gay VE3WWG
2004-01-23 12:52                                     ` Marin David Condic
2004-01-24  5:52                                       ` Robert I. Eachus
2004-01-24 12:56                                         ` Marin David Condic
2004-01-24 15:53                                           ` Robert I. Eachus
2004-01-30 17:39                                             ` Warren W. Gay VE3WWG
2004-01-31  1:58                                               ` Robert I. Eachus
2004-02-02 17:55                                                 ` Warren W. Gay VE3WWG
2004-02-04 18:36                                                   ` Robert I. Eachus
2004-02-06 17:27                                                     ` Warren W. Gay VE3WWG
2004-02-07 13:18                                                       ` Marin David Condic
2004-02-09 17:37                                                         ` Warren W. Gay VE3WWG
2004-02-10 14:59                                                       ` Standard Ada Preprocessor Jacob Sparre Andersen
2004-02-10 17:57                                                         ` Warren W. Gay VE3WWG
2004-02-10 21:49                                                           ` Jacob Sparre Andersen
2004-02-11  8:34                                                             ` Dmitry A. Kazakov
2004-02-13 17:27                                                             ` Warren W. Gay VE3WWG
2004-01-30 17:34                                           ` Standard Ada Preprocessor (Was: why ada is so unpopular ?) Warren W. Gay VE3WWG
2004-01-22 12:47                                 ` Marin David Condic
2004-01-22 13:24                                   ` Jean-Pierre Rosen
2004-01-22 18:20                                     ` Robert A Duff
2004-01-23  9:18                                       ` Jean-Pierre Rosen
2004-01-23 12:59                                     ` Marin David Condic
2004-01-23 14:21                                       ` Jean-Pierre Rosen
2004-01-24  6:02                                       ` Robert I. Eachus
2004-01-24 13:09                                         ` Marin David Condic
2004-01-24 19:32                                           ` tmoran
2004-01-24 20:34                                             ` Marin David Condic
2004-01-22 17:29                                   ` Warren W. Gay VE3WWG
2004-01-22 13:19                                 ` Standard Ada Preprocessor Georg Bauhaus
2004-01-22 13:49                                   ` Marin David Condic
2004-01-22 15:03                                     ` Georg Bauhaus
2004-01-22 17:33                                       ` Warren W. Gay VE3WWG
2004-01-22 19:02                                         ` Georg Bauhaus
2004-01-23 17:35                                           ` Warren W. Gay VE3WWG
2004-01-24  1:50                                             ` Marin David Condic
2004-01-24  5:33                                               ` Randy Brukardt
2004-01-24 13:28                                                 ` Marin David Condic
2004-01-24 15:58                                                   ` Robert I. Eachus
2004-01-24 16:11                                                     ` Marin David Condic
2004-01-24 19:32                                                   ` tmoran
2004-01-24 20:44                                                     ` Marin David Condic
2004-01-25  5:02                                                       ` Robert I. Eachus
2004-01-25 16:38                                                         ` Marin David Condic
2004-01-26 16:03                                                           ` Robert I. Eachus
2004-01-24 23:39                                                   ` Randy Brukardt
2004-01-25 13:47                                                     ` Stephane Richard
2004-01-26 19:19                                                       ` Randy Brukardt
2004-01-24  6:08                                             ` Robert I. Eachus
2004-01-23 13:11                                       ` Marin David Condic
2004-01-22 14:12                                   ` Dmitry A. Kazakov
     [not found]                           ` <ldlq00hmnm7ofaqem3kkrt7qhf6o7kjfmj@4ax.com>
2004-01-21 12:20                             ` why ada is so unpopular ? Marin David Condic
2004-01-19 13:09                   ` Jeff C,
2004-01-19 23:03                     ` Robert I. Eachus
2004-01-20  1:10                       ` cl1
2004-01-20  5:34                         ` Robert I. Eachus
2004-01-20  7:37                           ` Preben Randhol
2004-01-20 16:41                             ` Robert I. Eachus
2004-01-20 23:59                             ` Stephen Leake
2004-01-21 10:29                               ` Preben Randhol
2004-01-17 23:01     ` Marin David Condic
2004-01-18  0:30       ` Hyman Rosen
2004-01-18  2:06         ` cl1
2004-01-18  3:12           ` Hyman Rosen
2004-01-18  3:28             ` cl1
2004-01-18 14:34         ` Marin David Condic
2004-01-19 23:46     ` chris
2004-01-18 18:41 ` Jano
2004-01-21  2:01 ` Luke A. Guest
2004-01-21 14:23   ` Hyman Rosen
2004-01-21 14:31   ` Ludovic Brenta
2004-01-21 15:15     ` Hyman Rosen
2004-01-21 18:40       ` Robert A Duff
2004-01-21 18:31   ` chris
2004-01-22 13:11     ` Marin David Condic
2004-01-22 23:33       ` Stephen Leake
2004-01-23 13:25         ` Marin David Condic
  -- strict thread matches above, loose matches on Subject: below --
2004-01-26 13:30 Standard Ada Preprocessor Lionel.DRAGHI
2004-01-26 16:10 ` Robert I. Eachus
replies disabled

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