写経
前章に比べるとレベル上がった印象。 import Data.Char(chr, ord, isLower, isUpper) -- 7.1 基本概念 twice :: (a -> a) -> a -> a twice f x = f (f x) -- 7.2 リスト処理 map :: (a -> b) -> [a] -> [b] map f xs = [f x | x <- xs] map f [] = [] map f …
リスト内包表記はMathematicaで慣れてるのでサクサク通過。 -- 5. リスト内包表記 import Data.Char(isLower, isUpper, ord, chr) -- 5.1 生成器 concat :: [[a]] -> [a] concat xss = [x | xs <- xss, x <- xs] firsts :: [(a,b)] -> [a] firsts ps = [x | …