プログラミング Haskell 第12章 遅延評価 練習問題
今日は少しイレギュラーですが休日に自宅で読みました。12章の最後の練習問題です。
- 6.
data Tree a = Leaf | Node (Tree a ) a (Tree a) repeatTree :: a -> Tree a repeatTree x = Node (repeatTree x) x (repeatTree) takeTree :: Int -> Tree a -> Tree a takeTree 0 _ = Leaf takeTree (n+1) Leaf = Leaf takeTree (n+1) (Node l x r) = Node (takeTree n l) x (takeTree n r) replicate :: Int -> a -> Tree a replicate n = takeTree n . repeatTree
これで12章は終わり。本書の最終章、13章へ進みます。