2009-12-05から1日間の記事一覧

RWH p.92 練習問題 3

import System.Environment (getArgs) interactWith function inputFile outputFile = do input <- readFile inputFile writeFile outputFile (function input) main = mainWith myFunction where mainWith function = do args <- getArgs case args of [inp…

RWH p.92 練習問題 1, 2

-- 1 safeHead :: [a] -> Maybe a safeHead [] = Nothing safeHead (x:_) = Just x safeTail :: [a] -> Maybe [a] safeTail [] = Nothing safeTail (_:xs) = Just xs safeLast :: [a] -> Maybe a safeLast [] = Nothing safeLast xs = Just $ myLast xs safe…

RWH 4.5.8 文字列専用の関数

import Data.Char (isSpace) myLines :: String -> [String] myLines [] = [] myLines cs = let (pre, suf) = myBreak (\c -> c == '\n') cs in pre : case suf of ('\n':rest) -> myLines rest _ -> [] myUnlines :: [String] -> String myUnlines [] = "\n…