comp.lang.ada
 help / color / mirror / Atom feed
From: "Warren W. Gay VE3WWG" <warren@ve3wwg.tk>
Subject: Re: Standard Ada Preprocessor (Was: why ada is so unpopular ?)
Date: Mon, 02 Feb 2004 12:55:04 -0500
Date: 2004-02-02T12:55:04-05:00	[thread overview]
Message-ID: <99wTb.4905$bp1.159188@news20.bellglobal.com> (raw)
In-Reply-To: <wv-dnQ0mNLR9lobd4p2dnA@comcast.com>

Robert I. Eachus wrote:

> Warren W. Gay VE3WWG wrote:
> 
>> Ah, but when you are writing code that must interface with
>> 3rd party software, where at one version it uses a 16-bit
>> value, and on other versions 32-bits etc., then you must
>> make your Ada code match _it_.
> 
> Hmmm.  I won't say that this is not a potentially killer problem.  Just 
> that the issue has nothing to do with configuration clauses.

That statement is rather strong. This kind of thing is
handled in the C/C++ world all the time as a configuration
item. Now we could argue whether it should or not, but
I don't want to beat on that dead horse here.

> First let me deal with the different size issue.  I have code that 
> interfaces to the two different versions of the subprogram, and code 
> that checks a (local static variable) defining which interface is used. 
>  My code is written with an if or case statement and multiple calls:
> 
> procedure Thick_Binding (I: in out Integer) is
> begin
>   if OS.Name = Solaris then
>     declare
>       Local: Int_16;
>     begin
>       Local := Int_16(I);
>       C_Routine(Local);
>     exception
>       when Constraint_Error => ...
>     end;
>   elsif OS.Name = Windows then
>     Different_C_Routine(I);
>   end if;
> end Thick_Binding;
> 
> The code is all legal Ada except that I have left out the thin C binding 
> part) and the fact that there may be all sorts of trouble if C_Routine 
> is called with a 16-bit value on Windows (or maybe not).

This does work I suppose, if you add the different pragma Imports
to do the mappings between C_Routine and Different_C_Routine to
the same C function xyz().

But this type of a solution can explode
if the variations to the different versions of OS kernels is
added. Linux for example has gone through many revisions, and
so IMO, it is much simpler to define pid_t as a particular type,
once and for all, once you know what it should be. If you
had to code for these variances everywhere a pid_t was
involved, it would be much more ugly than the
conditional compiled solution.

But, that is _opinion_, and I expect that we'll disagree
about that.

...
> Why all the dire words up above?  We used to call it "version skew."  If 
> your project depends on components and tools from more than three 
> vendors or from the same vendor with different update schedules, you can 
> have the problem that there may never be a consistant set of all three 
> that works together.  That is a problem outside the ability of anyone 
> here to fix.  All you can do is to choose the components that your 
> project DEPENDs on, and keep that list small.

But this was my original point: if this is done successfully in C/C++
every day, then why can we not provide the same capability
(albiet in a better way) to compete at this same level?
Because of the conditional compilation bias, people want
to explain away the need for it.

Right now, it is _difficult_ to write Open Sourced projects
that compete with C/C++ ones. You might not care about that,
but it is close to my heart. So while I am running short
of energy for further discussion of this apparently futile
idea, it was my hope to spark some good ideas for some
solution(s).

> In fact, you can partition the code into two separately compiled 

Partitioning works good for smaller "works". Once the
number of variables rise, this becomes impractical.

Remember, you are trying to write something that will
compile on the most "user hosted platforms" as possible.
You cannot dictate the version of their kernel, the
version of the other software non-Ada libraries they
are using. You might dictate that your project is only
supportable with certain version restrictions, but you
want to reduce the number of those limitations to the
minimum practicable.

You will _never_ be able to compile all variations
yourself either, nor will you be able to test them
yourself. Some source code "alternatives" are safer
in the "untested" realm.

You cannot every hope to code for all of the possibilities.
As ugly as it is, C/C++ has managed to deal with this
problem sucessfully. And I am not suggesting for a
minute that we copy their approach, but they are doing
_something_ right.

Anyway, I have said my piece on this subject. I have
no energy to flog this dead horse even more. I already
know what I have to do ;-)

-- 
Warren W. Gay VE3WWG
http://ve3wwg.tk




  reply	other threads:[~2004-02-02 17:55 UTC|newest]

Thread overview: 296+ 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
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 [this message]
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-23 20:03 Standard Ada Preprocessor (Was: why ada is so unpopular ?) Leon Winslow
2004-01-24  2:00 ` Marin David Condic
2004-01-26 20:03 Lionel.DRAGHI
2004-01-26 23:10 ` Robert A Duff
replies disabled

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