Date: Fri, 7 Feb 2020 13:43:41 +0100
On Fri, Feb 7, 2020 at 10:19 AM Corentin via Lib-Ext <
lib-ext_at_[hidden]> wrote:
> The vector<bool> argument is a red herring.
>
Why? A template with subtlety different behavior based upon what it gets
instantiated with is the problem with vector<bool> (and possibly span<T,
size_t(-1)>, although that remains to be seen).
> optional<T&> does not have to be a full specialization.
>
Why does it have to be spelled o-p-t-i-o-n-a-l?
> When the committee decided to disable reference for optional it should
> have send red flags that the design was maybe unsound.
>
IIRC, it was decided because the original paper authors were trying to get
optional put into the standard and wanted to avoid the controversial topic
of references. I don't see why that should have sent red flags about
unsound design.
lib-ext_at_[hidden]> wrote:
> The vector<bool> argument is a red herring.
>
Why? A template with subtlety different behavior based upon what it gets
instantiated with is the problem with vector<bool> (and possibly span<T,
size_t(-1)>, although that remains to be seen).
> optional<T&> does not have to be a full specialization.
>
Why does it have to be spelled o-p-t-i-o-n-a-l?
> When the committee decided to disable reference for optional it should
> have send red flags that the design was maybe unsound.
>
IIRC, it was decided because the original paper authors were trying to get
optional put into the standard and wanted to avoid the controversial topic
of references. I don't see why that should have sent red flags about
unsound design.
-- Nevin ":-)" Liber <mailto:nevin_at_[hidden] <nevin_at_[hidden]>> +1-847-691-1404
Received on 2020-02-07 06:46:57