かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

countlineだ!

標準入力から受け取った文字列の行数を数えるっていうプログラムを作ります。
今までは,本を見ながらって感じでしたが,本をスタバで抹茶フラペチーノ飲みながら読んできたので覚えてるかどうかという意味も込めて見ないで書きます!


登場する関数は以下のとおり。

lines 文字列を受け取って改行で区切ってリストにして返す。
length リストを受け取って,その要素数を返す
print 画面に出力する

いけそうですな!

リストとは,["hoge", "fuge", "moge", "moe"]みたいなもの。
配列ですな。


もう1つ初登場なのが$。
$は,括弧の省略系だ。
print ( hogehoge ( mogemoge fuga ))っていうのを
print $ hogehoge $ mogemoge fugaと言う風に書ける。
うん。Lispみたいに括弧地獄にならなくてすむのね。
すばらすぃ。

んじゃいってみよう

countline.hs------------------------
main = do cs <- getContents
          print $ length $ lines cs

こうなってくると簡単なパズルみたいなものですね。
linesで改行区切りのリストにしてlengthで長さとってprintで結果を表示。

うん。すばらしぃ。
コンパイルしてみて実行!

H:\develop\Program\Haskell\countline>countline < countline.hs
2


うん。すばらすぃ。