1.はじめに 1.1 生い立ち  Coalは、当初、文書管理システム(OpenStreet)用に開発されたインタプリター言語です。  機能的には、クライアントAPからのコマンドを受けて、DBを検索し結果を編集して返すという単純なものでした。  その後、機能が強化され現在に至っています。 1.2 特長  Coalは手軽な手続き型プログラミングのためのインタプリタ言語です。  Coalは(Perlのような)テキスト処理やシステム管理のための豊富な機能を持っています。  また、Coalは単純で、分かりやすく、簡単に拡張できます。  もし、Rubyのようなオブジェクト指向ではなく、簡単な手続き型の言語を求めていたり、  Perlは見にくいと感じているなら、Coalはまさにぴったりです。 (1)インタプリタ Coalはインタプリタ言語ですのでプログラムを実行するためにコンパイルする必要はありません。   ただし、一度実行された文は中間形式にコンパイルされキャッシュされます。   プログラムは、スクリプトと呼ばれるテキストファイルにフリーフォーマットで記述します。 (2)変数に型が無い (動的型付け) Coalの変数はどのような型のデータも格納する事ができますので、変数の型について心配する必要はありません。 半面、コンパイル時のチェックは弱くなります。 明示的に型を指定することもできます。 (3)豊富な変数の種類 Coalでは宣言なしで使える変数(システム変数、内部番号変数、パラメータ変数、検索結果読み込み変数)と 変数の種類を宣言して使う変数(内部変数(LOCAL,PRIVATE)、外部変数(PUBLIC,GLOBAL))があります。 (4)単純な文法 Coalの文法はC言語やVB等から影響を受けた単純なものです。 (5)ユーザによるメモリ管理が不要 Coalはメモリ管理を自動的に行います。 (6)豊富なデータ形式   データには、スカラー、配列(数値インデックスとハッシュ)、リスト、データ並び、構造体があります。 (7)豊富なデータ型   データ型には、文字列、数値、バルク(バイナリ)、日付があります。   数値には、整数、2進浮動小数点、10進浮動小数点、10進固定小数点があります。 (8)2種類の実行形式   コマンド実行とサーバ実行の2実行形式があります。 2.実行してみよう   さっそく、簡単なスクリプトを書いてみましょう。   下の文を適当なエディタで作成して下さい(ファイル名はsample.cl)   ファイル名と拡張子は自由ですが、デフォルトの拡張子は、"cl"です。拡張子はなくてもかまいません。 // // sample.cl // proc main; print 'Hello World!'; return; end proc;   実行は、以下のようにします。 > coal sample Hello World! >