シーケンスプログラミングの紹介


本編では、基礎的なプロセス制御文法を紹介します.よく使われる再帰関数の慣用的なインスタンスコード.erlangが持参したデバッガの使い方を紹介します.
インスタンスコード:
-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オプションを選択して、ブレークポイントの位置を自分で設定します.