comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@comcast.net>
Subject: Re: Standard Ada Preprocessor (Was: why ada is so unpopular ?)
Date: Fri, 30 Jan 2004 20:58:55 -0500
Date: 2004-01-30T20:58:55-05:00	[thread overview]
Message-ID: <wv-dnQ0mNLR9lobd4p2dnA@comcast.com> (raw)
In-Reply-To: <MEwSb.43806$mf4.1510770@news20.bellglobal.com>

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.

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).

As I said, the thin bindings part may compile on the "wrong" system or 
may not.  But I deal with that problem in the thin bindings themselves.

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.

In fact, you can partition the code into two separately compiled and 
mantained subsystems to mitigate the version skew effects.  One thing 
that almost jumps out at you from this is something that is almost 
normal practice in the industry.  If you have a system that depends on 
web protocols AND a database, you need to partition the two as well as 
you can.  You may or may not have separate front ends for IE and 
Netscape/Mozilla, you may use ASPs or generate HTML, etc.  But if you 
want to avoid headaches, the portion of the application that is database 
dependent (schemas, data integrity, etc.) is separate from the 
webserving front end.

> And what is even worse, you can configure your interface
> with the pragma Import(), and it will compile and link
> successfully. However, at _run_ time, you'll get undefined
> behavior if things don't agree. This is the impedance
> mismatch that you get between Ada and C (for example),
> and obviously something you try to minimize.

Exactly, I use Ada to choose the right version of the interface for the 
actual system.  But more important, as I said above, I try to partition 
the system as much as possible so that different 
subsystems/partitions/whatever can be updated separately, with only Ada 
interfaces maintained as part of the project in common.


-- 
                                           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-31  1:58 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 [this message]
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-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