Так и должно быть. Это unicode, print/show его экранирует. У вас юникод должен выводиться верно через putStrLn.
Попробуйте:
sequence_ $ map putStrLn [adj ++ " " ++ noun | adj <- adjs, noun <- nouns]
Если вы хотите выводить неэкранированный юникод через print/show, тогда обратите внимание на этот пакет
https://hackage.haskell.org/package/unicode-show