Linear-Time Suffix Array Implementation in Haskell (2014)