2016-11-07 8 views
1

私はリストの正方形を得るためにハスケルで関数を作成しています。ここに..私のコードハスケルのリストの正方形

sqrall :: [Int] -> [Int] 
sqrall [] = [] 
sqrall [x] = map (^2) x 

ですが、そのコードは、私を助けてください..私は行方不明ですどこかわからないではないworking.iある

+1

注意を。 Cf。 pdoherty926の答え。 – duplode

答えて

2

あなたは非の角括弧を削除する必要があります関数定義の左側にある空のリストパターン。

次のように動作します:map`だけで罰金、とあなたが考えているように、空のリストを扱う `として空のリストベースの場合は、ここでは不要であることを

sqrall x = map (^2) x 
sqrall [1,2,3] -- [1,4,9] 
+1

私たちは 'sqrall = map(^ 2)'にηを減らすことができます – mnoronha