comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: pragma/aspect Import, Convention parameters
Date: Thu, 13 Aug 2015 15:32:23 -0500
Date: 2015-08-13T15:32:23-05:00	[thread overview]
Message-ID: <mqiuso$m0g$1@loke.gir.dk> (raw)
In-Reply-To: 1215a889y9uxf$.1nolkb1ctch79$.dlg@40tude.net

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message 
news:1215a889y9uxf$.1nolkb1ctch79$.dlg@40tude.net...
> Why is it an identifier?

Dunno. That's what Ada 95 defined, and we've never had a request to change 
it.

In my experience (which is mostly with rather low-level stuff), there is a 
lot more different than just the convention when changing between Linux and 
Windows (subprogram names, parameter values, etc.) So it's not much of a 
hardship to use separate thin bindings for each -- the differences are 
reconciled in the thick binding anyway.

The problem with such an approach is that conventional version control 
doesn't work very well with it; one needs to control individual blocks with 
some different and many being shared. Ideally, changes in shared parts would 
be reflected in all of the related versions of each package, while changes 
in the unshared parts would not.

We never found a solution to this for Janus/Ada (which has this problem in 
many modules); we extracted some host and target dependencies into dedicated 
packages, but many of them are not so simple and need to be described in 
code. We ended up with a version control overlay which manages the 
relationships between the different versions, so that a change in one 
version would trigger a request to check if the other versions needed 
similar updates (they usually do). But that checking had to be done 
manually.

We side-stepped the problem for Claw by not supporting any other targets 
than Windows. :-) It would have been a lot worse had we wanted to support 
(say) GTK on Linux.

                                     Randy.


  parent reply	other threads:[~2015-08-13 20:32 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-13  8:27 pragma/aspect Import, Convention parameters Dmitry A. Kazakov
2015-08-13 10:24 ` G.B.
2015-08-13 11:52   ` Dmitry A. Kazakov
2015-08-13 20:32 ` Randy Brukardt [this message]
2015-08-14  7:23   ` Dmitry A. Kazakov
2015-08-14 20:30     ` Randy Brukardt
2015-08-15  1:15       ` Shark8
2015-08-17 21:40         ` Randy Brukardt
2015-08-17 21:47           ` Bob Duff
2015-08-20 16:00           ` Shark8
2015-08-13 23:42 ` David Botton
2015-08-15  5:22   ` gautier_niouzes
2015-08-17 21:54     ` Randy Brukardt
2015-08-20 16:07       ` Shark8
replies disabled

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