Boost logo

Boost :

Subject: Re: [boost] [endian] Project not maintained
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2016-04-05 10:00:15


On Tue, Apr 5, 2016 at 4:44 PM, Peter Dimov <lists_at_[hidden]> wrote:
> Gavin Lambert wrote:
>
>> Ultimately though it's all just specifying a host-architecture-independent
>> storage format (bit layout) for a given type.
>
>
> It is, but my main point was that if you have an "endianness" library that
> gives you
>
> void write_ieee32le( float x, unsigned char * p );
>
> this interface does not change when x is not IEEE 32 bit float.

Boost.Endian and let's call it Boost.BinarySerialization may have
similar interfaces, but they are not required to work similarly.
Boost.Endian has to convert byte order and doesn't have to deal with
portable data representation.

> So while it's indeed true that the library no longer does endianness
> conversion, making another library that is not called "Endian" but has the
> exact same interface and works in the exact same way as the first one when x
> is IEEE 32 bit float would be mighty silly.

There is already overlap between different libraries in Boost; there's
nothing silly about that. IMHO, stuffing unrelated functionality in a
library is much worse.


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