From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Sharing generic bodies across instantiations.
Date: Thu, 29 Jul 2010 16:40:33 +0200
Date: 2010-07-29T16:40:32+02:00 [thread overview]
Message-ID: <b4sa7fdb381x$.l3hnqcyuokej$.dlg@40tude.net> (raw)
In-Reply-To: 9ad8b242-fe4c-4871-8c0e-1f1ddec936c7@w31g2000yqb.googlegroups.com
On Thu, 29 Jul 2010 07:02:25 -0700 (PDT), Maciej Sobczak wrote:
> On 29 Lip, 10:03, "Dmitry A. Kazakov" <mail...@dmitry-kazakov.de>
> wrote:
>> You are free to disagree
> I do.
I know.
>>> Even if we assume such a limitation of discussion, there is still
>>> nothing particular in the C++ standard that would prevent code sharing
>>> as an implementation strategy for templates.
>>
>> It would be technically meaningless, because the back-end tools down to the
>> linker and loader were unsuitable for this.
>
> First: C++ standard places no constraints on how the implementation is
> organized at the system level.
What are you trying to say by this?
> Second: so, I understand, "the back-end tools down to the linker and
> loader" were more suitable to do it in Ada, right?
You mean shared Ada generic bodies? Yes they require much less late binding
than C++ templates would, if anybody came to a silly idea to compile and
then share them.
>>> Interestingly, macros cannot use this strategy by their definition.
>>
>> They perfectly can.
>
> No. 2.1 (C++ standard) defines the phases of translation - macro
> expansion is performed before syntactic and semantic analysis of
> tokens.
1. My example of shared macros was MACRO-11.
2. The standard does not put any requirements on how the compiler actually
works. Precompiled headers and IDEs with "go to the declaration point" for
a #define, or just showing the source, not yet expanded, code, even daring
to colorize it, do not take this advise literally.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2010-07-29 14:40 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-27 0:51 Sharing generic bodies across instantiations Peter C. Chapin
2010-07-27 3:01 ` Gene
2010-07-27 6:55 ` AdaMagica
2010-07-27 11:29 ` Ludovic Brenta
2010-07-27 14:10 ` Tero Koskinen
2010-07-27 10:51 ` Martin
2010-07-27 20:06 ` anon
2010-07-27 22:23 ` Peter C. Chapin
2010-07-28 7:59 ` Maciej Sobczak
2010-07-28 9:28 ` Dmitry A. Kazakov
2010-07-28 12:55 ` Maciej Sobczak
2010-07-28 13:16 ` Dmitry A. Kazakov
2010-07-28 19:48 ` Maciej Sobczak
2010-07-29 8:03 ` Dmitry A. Kazakov
2010-07-29 14:02 ` Maciej Sobczak
2010-07-29 14:40 ` Dmitry A. Kazakov [this message]
2010-07-29 20:27 ` Maciej Sobczak
2010-07-30 9:09 ` Dmitry A. Kazakov
2010-07-30 12:31 ` Maciej Sobczak
2010-07-30 14:59 ` Dmitry A. Kazakov
2010-08-03 3:02 ` Randy Brukardt
2010-08-03 14:37 ` Robert A Duff
2010-08-03 2:47 ` Randy Brukardt
2010-07-28 20:01 ` Keith Thompson
2010-07-29 7:46 ` Dmitry A. Kazakov
2010-07-28 11:27 ` Peter C. Chapin
2010-07-28 13:10 ` Maciej Sobczak
2010-07-28 16:32 ` Peter C. Chapin
2010-07-28 19:30 ` Robert A Duff
2010-07-28 20:03 ` Maciej Sobczak
2010-07-28 11:47 ` anon
2010-08-03 2:38 ` Randy Brukardt
2010-08-03 14:31 ` Robert A Duff
2010-07-28 0:55 ` Keith Thompson
2010-07-28 8:42 ` Markus Schoepflin
2010-07-28 11:16 ` anon
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox