シーケンスプログラミングの紹介
本編では、基礎的なプロセス制御文法を紹介します.よく使われる再帰関数の慣用的なインスタンスコード.erlangが持参したデバッガの使い方を紹介します.
インスタンスコード:
付属のデバッガの使用:
1. erlc+debug-info*.erlを使用します.ソースコードをコンパイルするときにデバッグ情報を添付します.
2. erlのvmコマンドラインに>debugger:start()と入力します.デバッガを呼び出します.
3. erlのvmコマンドラインに>c(*,[debug-info])と入力.
4. AutoAttachのFirst Callをチェックします.
5. メニューバーからModule->Interprt Modulesを選択し、独自のモジュールファイルを選択します.
6. メニューバーからBreakオプションを選択して、ブレークポイントの位置を自分で設定します.
インスタンスコード:
-module( main ).
-export( [auto/0] ).
auto()->
io:format("hello the world."),
X=[1,2,3,4,5],
io:format( "list size is: ~p
",[listsize(X)] ),
io:format( "f(2) = ~p
",[f(2)]),
io:format( "factorial( 4 ) = ~p
",[factorial(4)]).
listsize(L)->
case L of
[] -> 0;
[_|E] -> 1 + listsize(E)
end.
f(X) ->
Y = X + 1, Y * X.
%%
%% when
%%
factorial( 0 ) ->
1;
factorial( N ) when N > 0 ->
N * factorial( N - 1 ).
%%
%%
%%
member( _, [] ) ->
false;
member( H, [H|_] ) ->
true;
member( H, [_|T] ) ->
member( H, T ).
付属のデバッガの使用:
1. erlc+debug-info*.erlを使用します.ソースコードをコンパイルするときにデバッグ情報を添付します.
2. erlのvmコマンドラインに>debugger:start()と入力します.デバッガを呼び出します.
3. erlのvmコマンドラインに>c(*,[debug-info])と入力.
4. AutoAttachのFirst Callをチェックします.
5. メニューバーからModule->Interprt Modulesを選択し、独自のモジュールファイルを選択します.
6. メニューバーからBreakオプションを選択して、ブレークポイントの位置を自分で設定します.