タイトルにあるように、Haskell を使用してシンボル コードとそれに対応するシンボルを出力するのに問題があります。
import Data.Char
import Debug.Trace
foo z | trace ("Symbolcode " ++ show z ++ " is " ++ (chr z)) False = undefined
foo z = if (z <= 128)
then foo (z+1)
else show "All done."
...そして、次のようなエラーが表示されます。
Couldn't match expected type `[Char]' with actual type `Char'
In the return type of a call of `chr'
In the second argument of `(++)', namely `(chr z)'
In the second argument of `(++)', namely `" is " ++ (chr z)'
私は何を間違っていますか?また、これを行う簡単な方法はありますか (たとえば、トレース モジュールを使用しない)?