Boost logo

Boost :

Subject: Re: [boost] [hash] Extract module from functional + std::hash_combine
From: Daniel James (dnljms_at_[hidden])
Date: 2017-12-19 16:47:22


On 19 December 2017 at 16:14, Peter Dimov via Boost
<boost_at_[hidden]> wrote:
> Daniel James wrote:
>>
>> But it's possible that the next standard will include 'hash_combine', as
>> well as functions using variadic arguments:
>>
>> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3876.pdf
>
>
> Nico Josuttis has been pushing for std::hash_combine - his latest is
>
> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0814r0.pdf

Ah, I got the wrong one. The problem with this paper is that
hash_combine is defined differently to ours, so if it's added to the
standard, it's going to make it awkward for me to follow it.

> and I vaguely remember it being accepted by LEWG at the last meeting, but at
> the moment I'm not convinced that this is the right way forward.

I heard that on Slack after the last meeting. That's why I was picking
up on this paper, and not the others.

> The alternatives proposed by Howard Hinnant and by Google are better.

IIUC the Josuttis paper is intended as a stop-gap that won't get in
the way of a better proposal. But it's a bit half-baked as there are a
lot of use cases it doesn't have good support for, such as hashing
ranges or conditionally hashing a member.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk