erlang @ Wiki

Introduction

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集

1. Introduction


1.1 Erlang と OTP

Erlangは多目的プログラミング言語であり、並列性、配布、バグを内包している。


OTP(Open Telecom Platform)は、強固で適応性のあるテレコムシステムのためにtime-savingと柔軟な発展性を提供することを目的としている。またOTPは、Erlang Runtime Systemと、たくさんのready-to-useコンポネント(主にErlangで書かれた)と、Erlangプログラムのための設計原理のまとまりから成る。ErlangとOTPは密接な関係があるので、Erlang/OTPは一般的にOTPの代わりとして使われる。

1.2 Erlang/OTP

1.2.1 Erlang Runtime System

Erlang Runtime System(ERTS)は、OSの上を走るエミュレータと、配布とI/Oのような低レベルサービスを提供するカーネルと、膨大な再利用モジュールを含んだ標準ライブラリから成る。ERTSの一つの導入は、"Getting started with Erlang"の第二章に書いてある。完全なドキュメントは、書籍"Erlang 5.1/OTP R8 Basic Applications"に書いてある。

OTP設計原理は、アプリケーションを呼ぶコンセプトに基づくシステムを構築する手段をユーザーに提供する。OTPアプリケーションはシステムコンポネントをパッケージ化する方法で、モジュールライブラリかスーパービジョンツリーのまとまりである。スーパービジョンツリーは、fault-tolerantシステムプログラムに使われたプロセスの階層的な木のことである。そのプロセスは最も簡単な実装されたビヘイビアモジュールで、それは設計パターンの形式化である。標準ライブラリはスーパービジョンとサーバーとステイトマシンと一般的イベントハンドラのためのビヘイビアモジュールを含んでいる。"OTP Design Principles"の第四章で、設計原理が詳細に説明されている。

1.2.2 OTP コンポーネント

OTPコンポネントは6つのカテゴリに分けられる。



  • 基本的アプリケーション-基本的Erlang/OTP関数
    • コンパイラ 高次元なコンパクトコードを提供するErlangのためのバイトコードコンパイラ
    • カーネル Erlang/OTPを走らせる関数的必需品
    • SASL (System Architecture Support Libraries) コード置換や警告処理などのためのツールセット
    • STDLIB 標準ライブラリ
  • オペレーションと保守-ユーザーとErlang/OTP自身の両方によって改善されたシステム
    • EVA multi-featuredイベントと警告処理
    • OS_Mon OSからの検査を許すモニター
    • SNMP MIBコンパイラとSNMPエージェントのためのツールを内蔵したSNMPサポート
  • インターフェースとコミュニケーション-相互運用性とプロトコルサポート
    • Asn1 ASN1のサポート
    • Comet ウインドウ上でErlang/OTPにCOMオブジェクトを呼ばせるライブラリ
    • Crypto 暗号化サポート
    • Erl_Interface Cへの低レベルインターフェース
    • GS ユーザーインターフェースから独立したプラットフォームを書くのに使うグラフィックシステム
    • Inets WebサーバーやFTPクライアントのようなサービスのセット
    • Jinterface Javaへの低レベルインターフェース
    • SSL 安全なソケット層(SSL)、UNIX BSDソケットへのインターフェース
  • データベース運用
    • Mnemosyne DBMSの問い合わせ言語サポート
    • Mnesia リアルタイムで記述されたデータベースの重大な義務
    • Mnesia_session Mnesia DBMSへの外国語インターフェース
    • ODBC ODBCデータベースインターフェース
  • CORBAサービスとIDLコンパイラ
    • cosEvent Orber OMG Event Service.
    • cosNotification Orber OMG Notification Service.
    • cosTime Orber OMG Timer and TimerEvent Services.
    • cosTransactions Orber OMG Transaction Service.
    • IC IDL compiler
    • Orber A CORBA object request broker.
  • Tools.
    • Appmon OTPアプリを見るのにつかうユーティリティ
    • Debugger Erlangプログラムのテストとデバッグ
    • Parsetools A set of parsing と語句解析のツール
    • Pman Erlang/OTPシステムの状態の検査に使うプロセスマネージャ
    • Runtime_Tools プロダクションシステムでのインクルードするためのツール
    • Toolbar Erlang/OTPツールに簡単にアクセスするためのツールバー
    • Tools 変換解析などを含んだプログラミングツールのセット
    • TV ETSとMnesiaグラフィックテーブルビジュアライザー

1.3 狙いと目的


このドキュメントは、ErlangランタイムシステムとOTPアプリケーションとOTP設計原理について説明している。読み手はErlangプログラミング言語に精通しているが、Erlangでのプログラムの方法については説明できないと想定している。Erlangは”Concurrent Programming in Erlang, 2nd Edition”( ISBN 0-13-508301-X)で詳細に記してある。

1.4 The Erlang/OTP Documentation について

1.4.1 この本の構造

ドキュメントは8つのパートに分割されている。この本, Erlang 5.1/OTP R8 System Documentation, EN/LZT 108 4095 R2,は、ドキュメントのポイントから始まり、Erlang言語とランタイム、OTP設計原理、Erlang/OTPのインストールと設定の仕方が書いてある。


  • Chapter 2: "初めてのErlang"では、Erlangランタイムシステムについて記述してあり、読者にコンパイラやデバッガのようなツールを紹介している。
  • Chapter 3: "4.4からのErlangの拡張"では、最新バージョンの本Concurrent Programming in ERLANGから、Erlangに加えられたすべての拡張を列挙してある。
  • Chapter 4: "OTP Design Principles(OTP設計原理)"では、アプリケーションタームのErlangコードとスーパービジョン木の構築の仕方について記述している。典型的な例などを挙げてある。
  • Chapter 5: "Installation Guide(インストールガイド)"では、UNIXとWindowsでのErlang/OTPのインストールのガイドラインについて記述してある。
  • Chapter 6: "System Principles(システム原理)"では、Erlang/OTPを始めるのに役に立つオプションや使い方について記述してある。この章はまた、Erlang/OTPでのアプリケーションについて簡潔に記述してある。
  • Chapter 7: "Embedded Systems(組み込みシステム)"は、"Installation Guide"の補足である。組み込みシステム上でErlang/OTPを走らせることの問題点や特徴について記述してある。
  • Chapter 8: "Operation and Management Principles(制御と運用の原理)"では、制御のモデルやサブシステムの保守について記述してある。
  • Chapter 9: "Tutorial(チュートリアル)" は、別のプログラミング言語で書かれたプログラムとErlangプログラムを統一する時に使われるメカニズムのオリエンテーションである。

1.4.2 印刷規定

次のような印刷規定が使われている。


Examples of typographical conventions. 規定 Where used
コマンド To show menu selections and equivalent command line entries.
To show keyboard entries at system prompts.
コード
To highlight Erlang code, module and function names, arguments, variables, and file names.  


2. Things Left Out

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

人気記事ランキング
目安箱バナー