Boost logo

Boost :

From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2006-06-05 08:59:32


On Sun, 04 Jun 2006 16:34:38 -0400, Beman Dawes <bdawes_at_[hidden]>
wrote:

>A refresh of the .zip file for the Endian library, based on comments
>received so far, is available at
>http://mysite.verizon.net/~beman/endian-0.2.zip
>
>The docs are online at
>http://mysite.verizon.net/~beman/endian-0.2/libs/endian/index.html
>

Hi Beman,

I had a quick look and hope to do a more careful analysis in the next
days. Nonetheless I have some not very useful comments:

* as far as I know (I have been absent from the list for long time, so
please correct me if this has changed again) the license reference
text we use now doesn't contain "use, modification, and distribution",
despite what http://www.boost.org/more/lib_guide.htm says. The adopted
version is the one reported at
http://www.boost.org/more/license_info.html

* there is no guarantee that an unsigned char has 8 bits, and C++
programmers usually identify (in accordance with the standard
terminology) "byte" with "unsigned char". So either the various "<< 8"
have to be changed to something more portable or the interface should
use a different name than unsigned char; of course numeric_limits<>
offers everything you need, but you might also consider my more
fine-grained type traits in the Yahoo! files section:

  http://lists.boost.org/Archives/boost/2003/03/45411.php

* I fear I'm missing something but does unrolled_byte_loops really
"unroll" loops at compile time? It seems to me it just uses (run-time)
recursion.

* integer_cover_operators initial section reports
"integer_operations.hpp", presumably as filename, and seem to have
many superfluous includes. The guard macro name also seems
inconsistent. More importantly, is it intentional that stream input
and output only consider ostream and istream (no wide versions, no
templates, etc.)?

* (minor) the example omits fclose()

* though the Wikipedia article seems to be, at the time I'm writing,
in a decent state, it might easily degrade in the future (I've
experience this myself; no ranting :)); OTOH we can't include it into
the boost files, due to the Wikipedia license. It might be worth
writing something ourselves, at least in the long run, or link to a
specific version of it, with a word of caution that any newer versions
have not been verified by the boost members.

Cheers,
--Gennaro.


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