Haskellと日本語
Haskellの文字コードうんぬんでもめてましたが、そのプログラム専用の形式でいいのならなんら問題なかったです。
文字列にshow関数をかますとちゃんとエスケープしてくれ、今度はそれをread関数にかますと、あたりまえだけどきちんと(日本語に)戻してくれます。なので、日本語を含んだ文字列を出力するときはそのままwriteFileせずに、
writeFile path $ show string
としてやればいいのです。上の方法でファイルに書き込んだデータは、
readFile path >>= return.read
で、きちんと読み込むことができます。(上のコードは思い出して適当に書いてるんで、凡ミスしてるかもしれません。)
wikiの場合はこれで十分なんだけど、普通のファイルを扱う場合にはやっぱり問題だなぁ。こういうのはやっぱり標準のライブラリでなんとかできてほしいです。