teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

捕捉追加

2018/10/08 10:59

投稿

igrep
igrep

スコア433

answer CHANGED
@@ -1,5 +1,5 @@
1
1
  Listに対する `foldr` は、次のように定義されています。
2
- [参考にしたのはこちら](http://hackage.haskell.org/package/base-4.12.0.0/docs/src/GHC.Base.html#foldr)ですが、実際にはもうちょっと効率のいい実装になっているみたいです
2
+ [参考にしたのはこちら](http://hackage.haskell.org/package/base-4.12.0.0/docs/src/GHC.Base.html#foldr)ですが、実際にはもうちょっと効率のいい実装になっているみたいです
3
3
 
4
4
  ```
5
5
  foldr :: (a -> b -> b) -> b -> [a] -> b
@@ -18,9 +18,8 @@
18
18
 
19
19
  リストの残りの要素については、自分の手で計算してみてください。よくわかると思います。
20
20
 
21
+ ちなみに、fuuさんが期待したように動作するのは`foldl`の方です(第1引数に渡す関数の引数の順番が異なるので注意)。
21
22
 
22
- ちなみに、fuuさんが期待したように動作するのは`foldl`の方です。
23
-
24
23
  ```
25
24
  > foldl (\accum x -> x : accum) [] [1, 2, 3, 4]
26
25
  [4,3,2,1]