comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Sharing generic bodies across instantiations.
Date: Fri, 30 Jul 2010 16:59:20 +0200
Date: 2010-07-30T16:59:20+02:00	[thread overview]
Message-ID: <d8w4achm37j5.ep4boln51guf$.dlg@40tude.net> (raw)
In-Reply-To: 14342188-c6f4-4b60-9284-8eff4f3f9ecd@k19g2000yqc.googlegroups.com

On Fri, 30 Jul 2010 05:31:41 -0700 (PDT), Maciej Sobczak wrote:

> On 30 Lip, 11:09, "Dmitry A. Kazakov" <mail...@dmitry-kazakov.de>
> wrote:
> 
>>>> What are you trying to say by this?
>>
>>> That it does not matter what was the suitability of the back-end
>>> tools, as there is no obligation (as far as the standard is concerned)
>>> to use the existing tools. If you are not obliged to use existing
>>> tools, you are not constrained by their (lack of) suitability.
>>
>> This is obviously wrong. It is like to say that you are not constrained to
>> fly to the Moon even if there is no rocket available.
> 
> This is obviously wrong. The language standard is not concerned with
> what is available, but with what will be developed. Existing practice
> can of course provide the valuable guideline as well as feasibility
> data, but is but no means formally constraining.
> You can standardize flights to the Moon even if there is no rocket.
> Rockets will be built according to what the standard says.

Can I buy a ticket?

>>>> You mean shared Ada generic bodies? Yes they require much less late binding
>>>> than C++ templates would,
>>
>>> Can you elaborate on this, please?
>>
>> Compiled generic bodies, at least in Ada 83, can be parametrized using
>> linker expressions.
> 
> 1. What are linker expressions?

Formulae used to define symbols.

> Why they cannot be used with C++?

They are used with C++, but not to instantiate templates.

> 2. How does this affect the amount of late binding and why is there
> less of it than with C++ templates?

Because Ada generics were intentionally designed to support sharing and
thus not to become a burden for linkers and loaders of existing OSes. C++
templates were never intended for this.

>>>> 1. My example of shared macros was MACRO-11.
>>
>>> I thought we were talking about C++. Or Ada.
>>
>> We were about macros.
> 
> No, we were talking about going to the Moon.
> 
> Your tendency to pull the subject in every possible direction just to
> keep the discussion going is nothing new here.
> *I* was talking about C++ templates and in that context your claims
> were wrong.

You didn't show that.

> During the discussion I have referred to the C++ standard,
> whereas you have failed to substantiate your claims in any way other
> than with unrelated stories.
> 
>> (Especially because C++ templates are macros (:-))
> 
> Handwaving. We are close to EOF.

Talking about discussion methods, I did explain what macros and templates
have in common. All your responses so far did not go beyond "has nothing to
do".

>>>> 2. The standard does not put any requirements on how the compiler actually
>>>> works.
>>
>>> Bingo. So why do you put claims that are based on the suitability of
>>> some tools?
>>
>> Because any implementation must use these tools.
> 
> Implementation must use *some* tools. It might bring its own.

Show me a C++ compiler coming with another OS, loader, linker.

>> 1) C++ tells something about templates
>> 2) C++ is silent about some other things about templates
>> 3) 1 makes something allowed by 2 difficult
> 
> And we're still nowhere close to the conclusion on sharing generic
> bodies across instantiations.

We are done with debunking your claim about alleged contradiction.

> (we got, however, closer to the Moon in the meantime)
> 
>> Where is a contradiction?
> 
> 1. "the back-end tools down to the linker and loader were unsuitable"
> 2. "The standard does not put any requirements on how the compiler
> actually
> works."
> 
> The two above are exact citations.

See above.

> Frankly, I'm both tired and bored of this discussion. Can we stop?

Sure.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2010-07-30 14:59 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
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 [this message]
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