ifもしも

今日は、if文をやってみます。

Haskellでもif文があります。書式は、こう。

if 条件式 then 真の処理 else 偽の処理

PerlRubyなどに近いですね。ただ、大きな違いは、Haskellでは、else節を省略できません。何故なら、if文を使用する際、関数全体に適用するかたちになるので、条件が偽の際、関数の振る舞いがわからなくなってしまうからです。

では、引数が10より大きいかどうかを判断する関数を定義してみましょう。

bigger x = if  x  >  10
                   then   putStr "bigger!!\n"
                   else    putStr "... small\n"

if文で改行するとき、thenやelseは、ifよりもインデントを下げておく必要があります。まるで、pythonみたいですね。