関数型プログラミング言語Haskell Part17
■ このスレッドは過去ログ倉庫に格納されています
0303デフォルトの名無しさん
2012/01/22(日) 17:14:45.72p.50より引用
> tailコマンドの作りかたにもいろいろありますが、今回は次のような方針で実装しました。
> 1. 行のリストを逆順にする
> 2. 先頭からn行を取る
> 3. 取った部分リストをまた逆順にする
実際のコード、同ページのリスト2.9
> main = do cs <- getContents
> putStr $ lastNLines 10 cs
> lastNLines n cs = unlines $ takeLast n $ lines cs
> takeLast n ss = reverse $ take n $ reverse ss
ここまでに使った関数は putsStr, putStrLn, print, length, take, reverse, lines, unlines
アクションが getContents
入門書の序盤のリスト処理の例題としてはこんなもんじゃないだろうかと思う
ふつける擁護とかしても仕方ないので俺ならこう実装するってのがあれば見てみたい
■ このスレッドは過去ログ倉庫に格納されています