The review of std.hash package

Johannes Pfau nospam at example.com
Wed Aug 8 01:56:30 PDT 2012


Am Wed, 08 Aug 2012 11:48:54 +0400
schrieb Denis Shelomovskij <verylonglogin.reg at gmail.com>:

> The question about module names.
> 
> Is it supposed that e.g. std.hash.crc module will contain many CRC 
> implementations, not only one CRC-32? If not, it will be better to
> call it std.hash.crc32 because other CRC variants are also in use. Or
> even std.hash.crc.crc32.
> 
> Same with std.hash.sha and std.hash.md modules.
> 

They're supposed to contain more implementations in the future. I
basically just wrote the new API, then ported what we already had in
phobos (and in a pull request by redstar) to the new API. The rest of
the SHA functions could probably follow soon as Piotr Szturmaj already
has a properly licensed implementation. The Boost project has a
templated CRC implementation, we could port that as well.

One problem is that the current MD5 and SHA implementations have been
manually optimized for dmds inliner though, so those probably won't be
replaced by a more generic version until we have benchmarks in phobos
which ensure that there won't be performance regressions.


More information about the Digitalmars-d mailing list