On 26 Mar 2012, at 16:20, Johan Tibell wrote: > On Mon, Mar 26, 2012 at 7:48 AM, Malcolm Wallace <malcolm.wall...@me.com> > wrote: >>> In the region of this side of the Atlantic Ocean where I teach, the >>> student population is very diverse >> >> Prelude> putStrLn (take 5 "Fröhßen") >> Fröhß > > ghci> putStrLn "Fro\x0308hßen" > Fröhßen > ghci> putStrLn (take 5 "Fro\x0308hßen") > Fröh > > Your example works because your input happens to be in a normal form.
Yes indeed. And I think it would be perfectly reasonable for the String (= [Char]) API to have a function "normalise :: String -> String" which would let the user deal with this issue as they see fit. After all, if you are aware of the difference between combining characters and normalised characters, then you will want to make your own decision about what semantics you want from operations like "take". Regards, Malcolm _______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime