Paradox (データベース)

Paradox（パラドックス）は、現在はコーレルが保守している関係データベース管理システム (RDBMS) 。DOS版は Ansa Software が開発し、Windows版はボーランドが1992年にリリースした。

Paradox for DOS 
Paradox for DOS は、Richard Schwartz と Robert Shostak が開発したRDBMSで、1985年に彼らが創業した Ansa Software がリリースした。1987年9月、ボーランドが Ansa Software を買収し、Paradox/DOS 2.0 も入手した。3.5までは1.0からの拡張だが、4.0と4.5は Borland C++ で書き直されてGUI対応し、拡張メモリアクセス方法も変更されている。

Paradox/DOS は1980年代末から1990年代初めにかけてそれなりに成功を収めた。当時は dBASEとそのクローンである xBase（FoxPro、Clipper）が市場を占めていた。その他の競合製品としては、Clarion、DataEase、R:Base、Dataflexなどがある。

Paradox/DOS の特筆すべき機能は以下の通り。

 AIエンジンによる視覚的な 例示による問い合わせ (QBE, Query by Example) 実装。
 メモリ利用の効率性 - テーブルやインデックスをキャッシュすることで、最適化に技量を要する xBase に比べて高速化が簡単である
 画期的なプログラミング言語 Paradox Application Language (PAL) が使える。
 テキストユーザインタフェースのメニューやウィンドウがデフォルトのインタフェースである（dBASEはコマンド行インタフェースがデフォルトで、その上に複雑なメニュー層を実装していた）。

Paradox for Windows 
Paradox for Windows は別の開発チームが開発した全く異なる製品である。DOS版の特徴である QBE やデータベースエンジンはDOSからほぼそのまま移植されているが、言語が PAL から ObjectPAL に変わり、フォームおよびレポートの作成にGUIが導入された。ObjectPAL は議論の的となったが、PAL はキー押下を記録することに基づいていたため Windows では全く異なる方式が必須だった。代わりにHyperCardのアイデアに基づいたオブジェクトベースの言語とした。フォーム及びリポートの設計には、デバイス独立なスケーリングを使い、詳細レイアウトのためにズーム可能である。AltoとSmalltalkにならってマウスの右クリックでフォームとレポートに関するプロパティにアクセスできる。これは最近のWindowsプログラムでは一般的なインタフェースである。ObjectPALは視覚的オブジェクトと対応していて、やはり右クリックで見ることができる。プロパティ表示とレイアウトツールは画面上に固定することができる。これはNeXTにならったもので、今ではWindowsプログラムで一般的である。

当初の開発ではC言語でマクロを駆使してオブジェクト指向的なコードを書いていた。その後 Turbo C++ が利用可能になると、残りはC++で書くようになった。1.0リリースまでの製品マネージャは Joe Duncan だった。開発及び品質保証を含めてチームは総勢30名だった。

Paradox for Windows は Quattro Pro for Windows と密接に連携したプロジェクトで、1990年春から Windows 3.0 のベータ版を使って開発がスタートした。当初の計画より1年間開発が遅れ、1993年初めごろリリース可能となった。遅れた要因は色々あるが、大幅な書き換えであったこと、オブジェクト指向を初めて採用したこと、GUIを導入したこと、新しいオペレーティングシステムを使ったことなどが考えられる。この遅延により、マイクロソフトはAccessをParadoxの数ヶ月前に出荷でき、市場での勝利を得た。

1990年、ボーランドは DOS および Windows 向けの xBase も開発しており、1992年に出荷を予定していた。1992年初めごろ、アシュトンテイトがWindows版の開発が困難な状況に陥ったのを知り、ボーランドは計画を変更してアシュトンテイトを買収し、dBASE の公式な後継を出荷することにした。アシュトンテイト買収にともなってInterBaseを入手したため、ボーランドは Paradox/Windows がInterBaseのデータベースにもアクセスできるようにすることを決め、データベースエンジンとのインタフェースとしてIDAPIを策定した。

この買収によって方針転換が必要になった。Paradox はこれまで dBASE と競合しており、Paradox/Windows は開発者指向の市場にシフトすることで dBASE とは異なる方向を目指す方針だった。しかし dBASE を入手したためその方針は適切ではなくなり、より一般の使いやすさを指向した市場を目指すことになった。しかし、既に開発はかなり進んでいて、そこからエントリーレベル市場に転換することは不可能だった。Access は1992年のクリスマスにリリースされ、その市場を獲得した。それでも Paradox/Windows は健闘した。しばらくするとボーランドではアシュトンテイト買収による悪影響が出始めた。多くの製品開発が中止され、痛みを伴うリストラが敢行され、買収の中心であった dBASE プロジェクトも技術的理由で中止となり、ボーランドの売り上げが低下し、早急な dBASE for Windows の開発が必要となった。ボーランドは幅広い製品を販売するだけの体力を失った。dBASE for Windows がリリースされたときに置換するという方針で Paradox は積極的にはマーケティングされなかった。dBASE for Windows は1994年にリリースされたが、既に時期を逃していた。

Microsoft Access は Paradox/Windows よりもずっと低価格で、Word、Excel、PowerPointと共に Microsoft Office Professional の一部としても販売された。しかも、FoxPro開発チームの貢献によって性能もよかった。その後のバージョンで使いやすさを改善していったにもかかわらず、Paradox は徐々にシェアが減っていった。Paradox は他のボーランド製品と共にWordPerfect社に売却され、WordPerfect の製品として販売され、さらにコーレルが取得してオフィススイートの一部として販売するようになった。dBASE for Windows は出荷があまりにも遅かったため、dBASEおよびxBaseユーザーは既にほぼ同じインタフェースの Microsoft FoxBase に移行していた。ボーランドはInterBase/IDAPIサーバを保持しており、Delphiツール開発に注力するようになり、一部市場では今も根強い人気がある。

Corel Paradox 
コーレルは1990年代中ごろに Paradox の権利を取得し、1997年に Corel Paradox 8 をリリースした。WordPerfect Office スイートの Professional Edition にも Paradox をバンドルしている。最新版は 11.0.0.676 で、Office X4 Hot Fix 1 および X5 Hot Fix 1 にバンドルされている。

ユーザー 
Paradox には多数のユーザーがいて（外部リンクにある） Paradox Community やニュースグループを中心に活動している。彼らの多くはPC用DBMSとしては Paradox が一番優れていると信じている。

Paradox/Windows のプログラミング言語 ObjectPAL のファンも多いが、PAL/DOSスクリプトからの移行は容易ではない。オブジェクトやイベントのモデルが全く異なるので、PALからObjectPALへの移行にはアプリケーションの全面的な書き換えが必要になる。

関連項目 
 XBase
 dBASE

脚注 

上記のVCPI標準は Paradox DOS版 3.5 かそれ以前に対応し、それらは Windows では動作しない。Paradox DOS 4.0 および 4.5 は Windows 2000 以外の Windows で動作可能。Windows 2000 では対応不能なエラーが2種類発生する。

外部リンク 
 Paradox Community
 Paradox ObjectPAL code snippets
 Paradox File Format
 pxlib Paradoxのデータベースを読み書きするライブラリ
 pxtools ParadoxのデータベースをSQLデータベースに変換するツール
 Paradox Converter Paradoxのテーブルを他の形式に変換するツール
 Paradox DB file viewer

データベース管理システム
デスクトップデータベースアプリケーション開発ツール
DOSのソフトウェア
Windowsのソフトウェア
コーレルコーポレーション
1985年のソフトウェア