Clipper (プログラミング言語)
Clipper は、xBaseプログラミング言語のひとつで、コンパイラの形で提供された。汎用プログラミング言語だが、xBase言語として主にデータベースやビジネス用プログラムの作成に使われた。
歴史
編集Clipper は1985年、xBase言語として(dBASE III向け)コンパイラとして登場した。それまでの dBASE のpコードマシンベースのインタプリタに対し、コンパイルによる高速化などが意図され期待されたものであった。Clipper は Nantucket Corporation が開発し、後にコンピュータ・アソシエイツ(後のCA)に売却された。2002年4月22日、CAと GrafX Software は CA-Clipper と類似の言語である Visual Objects(CA-Visual Objects)の開発・ライセンス・販売に関する提携に合意したと発表した(Visual Objects は Nantucket が Clipper を Windows 対応させようとして生み出した言語)。
Clipper は長年にわたってDOS用ツールとして生き残りつつ、C言語やPascalの要素を取り入れ、オブジェクト指向プログラミングの要素やコードブロックデータ型の概念(dBASEマクロ言語や文字列評価と関数ポインタの概念を融合させたもの)を導入し、当初よりもずっと強力な言語となってきた。
2006年現在、Clipper 言語の実装や拡張が複数の組織やベンダーで活発に行われている。フリーソフトウェア(GPLライセンス)では、Clip、Harbour、xHarbour などがある。商用製品としては、XBase++、FlagShip などがある。最近の実装の多くは各種プラットフォーム(DOS、Windows、Linux、UNIX、macOSなど)で動作し、様々な拡張をサポートし[1]、ランタイムライブラリも豊富で、各種データベース形式(DBF、DBTNTX、DBFCDX、MachSix、SQL など)をサポートする Replaceable Database Drivers (RDD) がある。これらの実装は標準の dBase/xBase 文法に準拠していると同時に、オブジェクト指向的構文や SQLExecute() のようなターゲットデータベース対応の機能も備えている。
2007年12月現在、ネットニュースのニュースグループ comp.lang.clipper と comp.lang.clipper.visual-objects が今でも活動している。
コーディング例
編集単純な Hello world のコード例。
? "Hello World!"
簡単なデータベース入力のコード例。
USE Customer SHARED NEW
cls
@ 1, 0 SAY "CustNum" GET Customer->CustNum PICT "999999" VALID Customer->CustNum > 0
@ 3, 0 SAY "Contact" GET Customer->Contact VALID !empty(Customer->Contact)
@ 4, 0 SAY "Address" GET Customer->Address
READ
バージョン履歴
編集Clipper にはいくつかのバージョンがある。
Nantucket Corporation による "seasonal versions"。"dBase コンパイラ"として使われた。
- Nantucket Clipper Winter'84 - 1985年5月25日
- Nantucket Clipper Summer'85 - 1985年
- Nantucket Clipper Winter'85 - 1986年1月29日
- Nantucket Clipper Autumn'86 - 1986年10月31日
- Nantucket Clipper Summer'87 - 1987年12月21日
- Namtucket Clipper 4.5 1990年 日本語バージョン
Nantucket Corporation による Clipper 5
- Nantucket Clipper 5.00 - 1990年
- Nantucket Clipper 5.01 - 1991年4月15日
- Nantucket Clipper 5.01 Rev.129 - 1992年3月31日
CAによる CA-Clipper-5
脚注
編集- ^ “xHarbour Language Extensions”. www.xharbour.org. 2004年12月12日時点のオリジナルよりアーカイブ。17 March 2005閲覧。
外部リンク
編集- mini Clipper FAQ
- The Oasis CA-Clipper と xBase に関する最大のファイルアーカイブ
- Harbour Open Source alternative
- comp.lang.clipper - Google グループ
- comp.lang.clipper.visual-objects - Google グループ