Using the 20051201 version of MLton I see that an array of bools takes 4 bytes per entry (plus the array header). Why isn't this 1 byte? Is this part of the same problem that causes large array elements to always cause an extra indirection to get to the element?