Caché ObjectScriptは、 InterSystems社が販売するCachéデータベースシステムの一部です。この言語は、ANSI標準のMUMPSプログラミング言語の機能的な上位互換です。Cachéは本質的にMUMPSの実装であるため、ANSI MUMPSルーチンをそのまま実行できます。商用製品としての魅力を高めるため、Cachéはオブジェクト指向プログラミング、マクロプリプロセッシング言語、Mの組み込みデータベースへのANSI標準SQLアクセス用の埋め込みSQL 、 C言語のような中括弧構文を使用したプロシージャブロックと制御ブロック、プロシージャスコープの変数、および空白構文の制限緩和などの機能を実装しています。
この言語には、プライベート変数、パブリック変数、グローバル変数があります。グローバル変数は、他の多くの言語とは異なり、ルーチン、プロセス、セッションをまたいでグローバル変数として扱われます。したがって、グローバル変数を編集すると、システム全体に共通するデータベース(再起動後も保持される)に永続的かつ即時的な変更が加えられます。プライベート変数のスコープはローカル関数、パブリック変数のスコープはプロセス全体です。プライベート変数とパブリック変数は、単一の要素でも、完全な多次元配列でも構いません。
Cachéの機能の大部分は、ANSI MUMPS規格から継承されています。データの表現方法や、開発中にプログラマーがデータについて考えるさまざまな方法については、該当の記事を参照してください。
こんにちは // ハローワールドルーチン 「ハローワールド」と入力する end quit // 終了 次に、Caché Terminalで(helloルーチンをSAMPLE名前空間に記述したと仮定して):
サンプル> DO ^hello クラス User.Helloworld { クラスメソッド HelloWorld() { // コンソールに書き込む 「Hello World」と入力してください。 やめる } } 次に、Caché Terminalで(User.HelloworldクラスをSAMPLE名前空間に書き込んだと仮定して):
サンプル> DO ##class(User.Helloworld).HelloWorld()