前に書いたHello Worldのプログラム!
こんなんでした。
main = putStrLn "Hello, World!"
1つ1つ噛み砕いてみよう
mainアクション
main = ....のmainがmainアクション。
Haskellは,最初にmainアクションが評価されて,mainアクションの評価が終わったら終了という流れ。
代入
main = .... の=を使って代入すると。
普通です。
関数
putStrLnという関数は,printfやstd::coutやSystem.out.printlnやConsole.WriteLineにあたるもの。
画面に出してくれる。
関数呼び出し時に,括弧でくくる必要もないとか。ふ〜ん。
putStrLn "Hello, World!"は,"Hello, World!"にputStrLnを適用する。という風に表すみたい。
そこらへんが今までやってきた言語とは感覚が違うのかぁ。慣れよう。
文字列リテラル
説明の必要も無いけど"Hello, World!"のこと。\nとかもいける。
ということで!!
読んでみよう。
「"Hello, World!"にputStrLnを適用する」をmainに代入。
実行時には,最初にmainが評価されるので,Hello, World!が表示される。
こんな理解であってるのかな?
とりあえず,こう思うことにしておこう。間違えてたら何処かで躓くだろう。