Erlang
■カテゴリ / ■テンプレート
Erlang(アーラン)は、コンピュータにおいて汎用的な用途に使うことができる並行処理指向のオープンソースソフトウェア(英:Open Source Software、略:OSS)プログラミング言語および実行環境。
2番目以降のメッセージに対しても同様のことを行う。 マッチングは、マッチするメッセージに出会うまで行われる。 メッセージが処理されると、メッセージはメールボックスキューから除去され、プロセスは復帰して続きの処理を行う。 Erlangの構成要素は何であれメッセージとして使うことができる。 Erlangの基本要素である整数、浮動小数点数、文字、アトムも、またタプル、リスト、さらには関数さえも、メッセージとして扱うことができる。
ソースコードの例を示す。
Erlangでは異なるノード (コンピュータ) に分散した複数のプロセスを互いに連携させて動作させるためのサポートも組み込みで備えている (分散処理) 。 プロセスは遠隔のノードに生成することができ、遠隔ノード上のプロセスとのプロセス間通信は透過的である。 すなわち、遠隔ノード上のプロセスとのプロセス間通信は、同じノード上のプロセスとのプロセス間通信と全く同じように行われる。
Erlangでの並行処理では、エラー処理の基本的な方法をサポートしている。 あるプロセスが異常をきたすと、プロセスは手際良く終了し、そのプロセスを制御しているプロセス (何らかのアクションをとることができるプロセス) にメッセージを送信する。 このエラー処理の方法により、ソースコードの保守性を高め複雑性を低減することができる。