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
next prev parent 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