erlangのお勉強。
- Erlangにおける符号" = "は代入を意味するのではなく、パターン照合処理を行っている
- Erlangでは変数の代入はできない。未束縛変数を「=」で右辺と等しくするという意味での代入は可能。つまり、単一代入。
- 変数は大文字
- Atom(文字列)は小文字で。ただし、シングルクォートでくくれば小文字もok
- タプル、リストが使用可能。使い方は他のスクリプト言語と同じ。
- モジュールと関数
-module(mymath).
-export([add/2, multi/2]).
add(X,Y) ->
X + Y.
multi(X,Y) ->
X * Y.
area(circle,X) ->
X * X * 3.14;
area(square,X) ->
X * X;
area(Other,X) ->
io:format("~p is not supported~n",[Other]),
X.
- ガード
bigger(X , Y) when X > Y ->
X;
bigger(X , Y) when X < Y ->
Y;
bigger(X , _Y) ->
io:format("same~n",[]),
X.