Boost logo

Boost :

Subject: Re: [boost] Any interest in hashing algorithms SHA and/or FNV1a?
From: foster brereton (fosterb+boost_at_[hidden])
Date: 2013-11-14 15:08:36


On Thu, Nov 14, 2013 at 11:39 AM, Christopher Kormanyos
<e_float_at_[hidden]> wrote:
> I view this as a design choice.
>
> The tried-and-true init --- digest --- finalize mechanism actually
> stems from a procedural-language approach. This is because
> explicit initialization or finalization (as you mention) can be
> eliminated with class-internal flags. So maybe an object-oriented
> design needs a slightly altered paradigm.
>
> Maybe it would be a good idea to mimic the interface of
> Boost.Crc, in so far as there are analogies such as init,
> final XOR --> finalize, etc.
>
> I think these kinds of design choices such as the interface,
> the class template parameters, etc. generally should be
> agreed upon up front.

Well this is why I asked. If I were to move forward with a formal
proposal of these headers into Boost I would want to get a consensus
of opinion on these design choices, to have a solid rationale for
building it out the way I did. It is obvious others have thought more
about these interfaces than I, and there are use cases that I have not
thought of that dramatically alter the interface. With that in mind,
let me see if I can revise the code to accommodate a broader audience.

-foster


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