I'm toying with the idea of adding a bitfield type to PDL, so that along the zeroth dimension it's not a whole number of bytes, but a calculated bit read (when it's used as an rvalue) or write (probably needs a function to set that, since PDL can't parse the C code yet to spot an lvalue).
Feedback on whether that would be valuable enough welcome!