UTF8 bomマークつきの日本語テキストを処理しようとしていて、
大体上手く行っています。問題は、”☆”みたいな文字をいくつかのテキストに
付加するための定数として

star = "☆"

などとしておいて cs ++ star みたいな事をやると star の部分が文字化けしてしまうことです。
GHC.IO.Encoding.UTF8 を使ったら良さそうなのですがghci で import して :t utf8 しても
意味が理解できなくてどうやって utf8 という関数を使うのかが理解できません。
最初は

star = utf8 "☆"

と書いてみたんですがダメみたいです。(なにか根本的に誤解してるみたいです)。
プログラム内で utf8 文字列定数を定義するにはどうすれば良いのでしょうか?
(もちろんプログラム自体も UTF8 bom 付きで保存して ghc に食わせています。)