From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: Sharing generic bodies across instantiations.
Date: Thu, 29 Jul 2010 07:02:25 -0700 (PDT)
Date: 2010-07-29T07:02:25-07:00 [thread overview]
Message-ID: <9ad8b242-fe4c-4871-8c0e-1f1ddec936c7@w31g2000yqb.googlegroups.com> (raw)
In-Reply-To: 5cljc8pc0gv0$.115t79rxo29vs$.dlg@40tude.net
On 29 Lip, 10:03, "Dmitry A. Kazakov" <mail...@dmitry-kazakov.de>
wrote:
> > We were talking about the nature of templates, not the nature of
> > macros.
>
> Yep, and the point was that templates being by the nature marcos
Paragraph, please. Otherwise this discussion is just hand-waving.
> You are free to disagree
I do. Templates are not macros, do not have the nature of macros, are
not their siblings and have no other association with them.
> > 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.
Second: so, I understand, "the back-end tools down to the linker and
loader" were more suitable to do it in Ada, right?
> > 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.
In other words, macros are expanded even before the compiler gets a
chance to realize that it compiles a C++ code.
--
Maciej Sobczak * http://www.inspirel.com
YAMI4 - Messaging Solution for Distributed Systems
http://www.inspirel.com/yami4
next prev parent reply other threads:[~2010-07-29 14:02 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 [this message]
2010-07-29 14:40 ` Dmitry A. Kazakov
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