Hi!
I know that Data.Text has different underlying representation, but no matter what it is, it should not be faster than Unboxed Vector Char when performing takeWhile. Both libraries implement takeWhile with the same signature of takeWhile :: (Char -> Bool) -> X -> X, so they are comparing Char by Char. Unboxed Vector know the shift between elements, so if Vector.Unboxed.takeWhile is 30% slower than Data.Text.takeWhile, I think we should consider it as a bug, right?
Hi!
I know that Data.Text has different underlying representation, but no matter what it is, it should not be faster than Unboxed
Vector Charwhen performingtakeWhile. Both libraries implementtakeWhilewith the same signature oftakeWhile :: (Char -> Bool) -> X -> X, so they are comparingCharbyChar. Unboxed Vector know the shift between elements, so ifVector.Unboxed.takeWhileis 30% slower thanData.Text.takeWhile, I think we should consider it as a bug, right?