On Tue, Feb 25, 2014 at 3:50 PM, minux <
minu...@gmail.com> wrote:
>
> On Feb 25, 2014 9:53 AM, "Ian Lance Taylor" <
ia...@golang.org> wrote:
>> On Tue, Feb 25, 2014 at 5:53 AM, roger peppe <
rogp...@gmail.com> wrote:
>> > The case that I'm always slightly concerned about is this:
>> >
>> >
http://play.golang.org/p/7fnQgF_wWc
>> >
>> > It's race free, I don't know how it could work efficiently on
>> > architectures
>> > that don't support byte-sized reads and writes.
>>
>> The C++11 memory model requires that the equivalent code in C++ work
>> correctly. It follows that on architectures that do not support
>> byte-level access C++ requires that char arrays be laid out in memory
>> such that each element takes up two bytes (or whatever is required).
>> Go will have to do the same thing.
>>
>> Or to put it another way, it is essentially no longer possible to
>> create an architecture that does not offer byte-level access and is
>> programmable in standard high-level languages.
> Does the standard require CHARBITS to be 8?
Yes, but programmers find that baffling in a different way. It means