Bitarrays in the age of 64bit
Dominikus Dittes Scherkl
dominikus at scherkl.de
Sun Apr 5 10:46:18 UTC 2020
On Saturday, 4 April 2020 at 11:44:24 UTC, Basile B. wrote:
> Yes I already thought to that, using an addressing system
> relative to the base address of a memory pool with a fixed size.
>
> At some point I considered this for a very wasteful Radix-tree
> structure but never did.
>
> This would work with a kind of stdx.allocator-like static
> interface but the problem is that the pointers types become
> something like ubyte[1], ubyte[2], ubyte[3], etc. depending on
> the pool max size. But the stdx alloc interface take void[]
> (and works on void[].ptr).
No, I thought of a whole new type-system, where ALL pointers are
bit-pointers, just the "standard" types now have to follow a
byte-alignment (the address has to be divisable by 8 - like on
68000er, where all multi-byte types had to have even addresses).
> So all the helpers (make, makeArray, etc) would not be usable
> and finally you'd have to write a lot to make the things
> usable, I mean in a generic way, with all D types.
Yes, there is a lot to change. I came up with this idea now,
because there's a discussion about D3, and this is something I
wish for a new language.
More information about the Digitalmars-d
mailing list