-7
GHCiは、 ':l file'を使ってファイルをロードしようとすると爆発します。何が間違っている可能性がありますか?
mySeq :: Integer -> Integer -> Integer -> [Integer]
mySeq x y z
| x < y = []
| otherwise = (x : sequence (x - z) y z)
GHCiは、 ':l file'を使ってファイルをロードしようとすると爆発します。何が間違っている可能性がありますか?
mySeq :: Integer -> Integer -> Integer -> [Integer]
mySeq x y z
| x < y = []
| otherwise = (x : sequence (x - z) y z)
sequence
で何をしようとしているのか分かりません。
あなただけ@Alecが指摘するように、多分あなたは(mySeq
代わりsequence
の)再帰呼び出しを行うためのものか、
mySeq :: Integer -> Integer -> Integer -> [Integer]
mySeq x y z
| x < y = []
| otherwise = [x, x-z, y, z]
についてあるいは、これらの四つの要素を持つリストを作成したい場合は、次の
mySeq :: Integer -> Integer -> Integer -> [Integer]
mySeq x y z
| x < y = []
| otherwise = (x : mySeq (x - z) y z)
2番目の方法は正しいです。 –
爆発に伴いエラーメッセージが表示されますか? – Thilo
あなたは再帰呼び出しで 'sequence'の代わりに' mySeq'を持っていることを多分意味しましたか? 'x:sequence(x - z)y z'の代わりに 'x:mySeq(x - z)y z' – Alec
あなたが何か縁取りをしない限り、タイプシステムはめったに到着しません。タイプシステムを利用してエラーを見つけてください。 – Carcigenicate