MVector is exported concretely, but its three fields are undocumented. In particular, it's not obvious to users whether the second Int is an offset or a length.
slice doesn't document what its Int arguments mean. Data.Vector.Generic.basicUnsafeSlice lacks that documentation as well. The explanation should be copied from Data.Vector in each case.
init, tail, take, drop, and splitAt have no documentation whatsoever, and in particular fail to note that they don't copy the underlying vector. The "unsafe" versions are also completely undocumented.
unsafeNew claims that the vector isn't initialized, but it actually is. Only unboxed vectors can be created uninitialized. The only difference between unsafeNew and new is that new checks that the requested size is sensible.
MVectoris exported concretely, but its three fields are undocumented. In particular, it's not obvious to users whether the secondIntis an offset or a length.slicedoesn't document what itsIntarguments mean.Data.Vector.Generic.basicUnsafeSlicelacks that documentation as well. The explanation should be copied fromData.Vectorin each case.init,tail,take,drop, andsplitAthave no documentation whatsoever, and in particular fail to note that they don't copy the underlying vector. The "unsafe" versions are also completely undocumented.unsafeNewclaims that the vector isn't initialized, but it actually is. Only unboxed vectors can be created uninitialized. The only difference betweenunsafeNewandnewis thatnewchecks that the requested size is sensible.