C++ Logo

sg15

Advanced search

Re: P2581R0: Specifying the Interoperability of Binary Module Interface Files

From: Gabriel Dos Reis <gdr_at_[hidden]>
Date: Mon, 9 May 2022 19:44:20 +0000
[Nathan]
> While compelling, we don't call partitions that begin 'export module
> Foo:Baz' 'external partitions', we call them 'interface partitions'.

Correct. And I don't see anyone making arguments against that.

The "external" was in reference to "contributing to external interface".

> Should we also consider renaming them to make the external/internal
> symmetry clearer?

I am not sure that would solve anything, since the issue wasn't about "interface", but "external interface".

> That would also break the link people have with
> 'interface units' and 'interface partitions'.

Absolutely! And I wouldn't recommend it.

Also, like I said earlier, I believe the existing terminology is probably fine for the language spec. I don't believe that a terminology that is needed for tooling must be used in the spec. As an example, most compiler implement runtime dispatch via "vtable", yet we don't use "vtable" to specify the language formally.

Each need and audience requires specific terminology.

-- Gaby

-----Original Message-----
From: Nathan Sidwell <nathanmsidwell_at_gmail.com> On Behalf Of Nathan Sidwell
Sent: Monday, May 9, 2022 12:34 PM
To: sg15_at_lists.isocpp.org; Iain Sandoe <iain_at_sandoe.co.uk>
Cc: Gabriel Dos Reis <gdr_at_microsoft.com>
Subject: Re: [SG15] P2581R0: Specifying the Interoperability of Binary Module Interface Files

On 5/9/22 13:43, Gabriel Dos Reis via SG15 wrote:
> [Daniel]
>> Yes. But the use of the term "implementation" creates a false symmetry
>> with the "Module Implementation Units".
>
> Exactly!
>
> When ordinary programmers hear "interface" and "implementation", the symmetry pops up right there, and most of the time they don't arrive at the same place as us WG21 experts.
> If we talk about "external", then "internal" is a natural opposite. Of course, "non-external" is another candidate, but the inevitable double negatives are best left for us, WG21 experts.

While compelling, we don't call partitions that begin 'export module
Foo:Baz' 'external partitions', we call them 'interface partitions'.
Should we also consider renaming them to make the external/internal
symmetry clearer? That would also break the link people have with
'interface units' and 'interface partitions'.

nathan

--
Nathan Sidwell

Received on 2022-05-09 19:44:23