| 会社種別 | 子会社 |
|---|---|
| 業界 | マルチメディアソフトウェア |
| 設立 | 1991年 |
| 廃止 | 1996 |
| 本部 | カリフォルニア州マウンテンビュー 、アメリカ合衆国 |
| 製品 |
|
| 親 | アップルコンピュータとIBM |
Kaleida Labs, Inc. は、マルチメディア クロスプラットフォームの Kaleida Media Playerと、その動作をプログラムするために使用されたオブジェクト指向 スクリプト言語 ScriptX を作成するために 1991 年に設立されました。このシステムは、1990 年代初頭の主要な取り組み領域であったインタラクティブCD-ROMタイトルの作成を目的としていました。システムが 1994 年に提供されたとき、システム要件とメモリフットプリントは比較的高く、MacプラットフォームにはネイティブのPowerPCバージョンがありませんでした。同じ頃、市場の急速な変化、特にWorld Wide WebとJava プログラミング言語の拡大により、インタラクティブ CD 市場はニッチな役割に追いやられました。Kaleida プラットフォームは大きな支持を得ることができず、会社は 1996 年に閉鎖されました。
Kaleida は、 Taligent オペレーティングシステムやPowerPC プラットフォーム向けのMotorolaとのAIM 提携など、1990 年代の Apple と IBM の 3 つの合弁事業のうちの 1 つでした。ScriptXは、その時期に Apple で開始されたいくつかの同様のソフトウェア プラットフォームのうちの 1 つでした。SK8 システムもマルチメディア市場を対象としていましたが、これはもともとHyperCardのメジャー アップグレードから発展したものです。Dylanプログラミング言語は、マルチメディアだけでなく一般的なプログラミングを対象とした、よりフル機能のプラットフォームでした。これらのソフトウェア プロジェクトの開発はすべて、ほぼ同時に終了しました。
歴史
形成
同社は1991年に発表され、1992年夏にナット・ゴールドハーバーが初代CEOとして業務を開始しました。[1]同社には、AppleのQuickTimeチームから厳選されたメンバーと、IBMの大手コンテンツ配信部門からのメンバーが勤務していました。Kaleidaの本社はカリフォルニア州マウンテンビューにあり、US101の東側にあるショアライン・アンフィシアターの近くにありました。Kaleidaは、企業ウェブサイトを公開した最も初期の企業の1つでした。
このシステムの初期モデルは Kaleida Media Player (KMP) でした。これは基本的に、Apple Macintosh、IBM PCクローン、セットトップ ボックス、その他のプラットフォームで動作するQuickTime Playerのクロスプラットフォーム インタラクティブ バージョンでした。これは、単一のユニバーサル マルチメディア システムになることが意図されていました。このモデルの上に ScriptXプログラミング言語とオブジェクト ライブラリがあり、開発者はこれを使用してメディア ファイルを完全にインタラクティブにできました。
デジタルワールドカンファレンスでの発言によると、ゴールドハーバー氏は、ScriptXにより開発者は「画面上のボタンを押して『ScriptXとして保存』を選択するだけで、実質的にあらゆるデバイスで作品を配布できるようになる」と述べた。 [2]大げさな発言が典型的で、ゴールドハーバー氏は後に「実際には、ScriptXには真の社会的意義がある」と述べた。[3]
ゴールドハーバーの派手なスタイル、高額な給与、そして明らかな進歩の欠如は、マスコミの否定的な報道につながった。ある幹部は「会社は設立から1年で約2000万ドルを費やしており、AppleとIBMはこのままのペースでお金を使い続けることを嫌がっている。カレイダの給与は高く、現在の発展段階には従業員が多すぎる」と述べた。[4]
1993 年初頭、ゴールドハーバーと取締役会はストック オプションと会社が株式を公開すべきかどうかをめぐって争い始めた。1993 年 7 月 18 日、同社はゴールドハーバーの後任として、元 IBM のマイク ブラウンが CEO に就任すると発表した。同社は、ゴールドハーバーは業界とのパートナーシップ構築に努めるため取締役会に残るが、この分野での進展が見られないことと、ゴールドハーバーの「非介入」経営が交代の主な理由であるとしている。[5]ゴールドハーバーは別れ際に、IBM と Apple の文化の違いと政治的駆け引きが最初から会社を破滅に導いたと皮肉った。
再フォーカスと解放
ゴールドハーバーの追放後、同社の焦点は絞られた。セットトップボックス用システムを構築する計画は、1994年4月に正式に放棄された。[6]それ以降のKaleidaの使命は、この時点では遅れていたScriptX言語とマルチメディアオブジェクトライブラリを完成させ、サポートすることだった。Kaleidaは、KMPを新しいパーソナルコンピュータのシステムソフトウェアとしてバンドルしようとした。同時に、CD-ROM開発者は、既存のWindowsおよびMacintoshシステムをサポートするコンテンツとともにKMPを出荷することができた。新たな焦点の一環として、同社は規模を縮小し、従業員の約20〜25%が解雇された。[6] [7]
1993 年後半から 1994 年初頭にかけて、同社の目標は、Kaleida Media Player を、4 MB のランダム アクセス メモリを搭載した 25 MHz Motorola 68030 または 25 MHz Intel 80486 プロセッサのいずれかで構成されるリファレンス プラットフォームで動作させることでした。そのようなシステムは当時のインストール ベースの標準であり、ほとんどの新しいコンピュータは読み取り専用の CD-ROM ドライブを搭載して出荷されていました。Kaleida のセットトップ ボックスの取り組みを支援していた東芝は、少数株主になりました。その短い歴史を通じて、Kaleida は Windows (Windows 3.1 と Windows 95 の両方)、Macintosh (68000 と PowerPC プラットフォームの両方をサポート)、および OS/2 向けのクロスプラットフォーム開発に取り組んできました。
ScriptX 開発キットと Kaleida Media Player の 1.0 バージョンは、1994 年 12 月 19 日にようやくリリースされましたが、これはかなり遅れていました。[8]それでも、レビューは概ね肯定的で、「使いやすさが際立っている」と評価され、コアは「ScriptX ベースの開発に共通する高い機能セットを提供するクラス」であると述べられています。[9]しかし、パフォーマンスはまったく別の問題でした。KMP の 1.0 バージョンは、Windows では 3.3 MB、Mac では 2.9 MB の RAM を必要としましたが、これは基本的なランタイムのみで、実際に実行されるコンテンツには必要ではありませんでした。[9]これを比較すると、当時のミッドレンジ Mac はLC 475で、標準で 4 MB の RAM しか搭載されておらず、OS がかなりの量を使用していました。さらに、このシステムはPowerPC形式でリリースされていませんでしたが、この時点で PPC はすでに 8 か月間 Mac ラインナップのハイエンドを占めていました。[9]
変化する市場
Kaleida は、CD-ROM ベースのアプリケーションの作成環境として設立されました。しかし、コンテンツ配信システムとして長年期待されてきた CD-ROM の製品ライフサイクルは、驚くほど短いものでした。1995 年までに、以前は CD-ROM で配信されていた軽量のインタラクティブ システムの多くをWorld Wide Web で配信することが明らかになりつつありました。ビデオや同様の高帯域幅のシステムはまだ Web に適していませんでしたが、Kaleida のようなものが提供する開発環境やインタラクティブ性は必要ありませんでした。
Kaleida は、CD の世界では新興市場と思われていた Wintel プラットフォームの代替品を提供するために設立されたこともありました。ゴールドハーバーは、マルチメディアの「戦争」が迫っていることを何度も述べ、このことを述べていました。[2] 1995 年初頭の Netscape の株式公開後、多くのソフトウェア開発者は、ブラウザ自体が Windows に対抗し、ブラウザ自体がマルチメディア プラットフォームになることを認識しました。Wintel に対抗できるスタンドアロン プラットフォームが誕生しました。Kaleida は、インターネット経由でオブジェクトを配信し、Web コンテンツを配信する取り組みを開始しました。[10]
潜在的な Kaleida 開発者のほとんどは、Kaleida がパフォーマンスの問題を解決し、より安定したバージョンの ScriptX を出荷するのを待ちながら、システムに対して静観の姿勢を取っていました。しかし、同社は、当時の市場の「ハイエンド」であった 16 MB 未満の RAM で適切に動作するシステムを実証できませんでした。MacromediaのDirectorと関連する Lingo プログラムは、その空白を利用して強力な市場を確立しました。[11]一方、Sun Microsystems は、最小のプラットフォームでも実行できるように特別に設計された Web 専用システムとして、 新しいJava プログラミング言語を宣伝していました。
閉鎖
1995 年後半には、ScriptX バージョン 1.5 の出荷が目前に迫っていたにもかかわらず、ScriptX が市場で勢いを失っていることは明らかでした。1995 年 11 月、Apple Computer と IBM は、1996 年 1 月をもって Kaleida Labs を閉鎖すると発表しました。[12]親会社は、いずれにしても ScriptX 1.5 を出荷すると発表した。ScriptX の今後の開発は Apple Computer 内のグループに移管され、Apple は ScriptX エンジニアリング チームのほとんどのメンバーに仕事を提供しました。
ScriptXバージョン1.5は、1996年1月のKaleida Labsの閉鎖とほぼ同時に出荷されました。[11] ScriptXを出荷することで、AppleとIBMは開発者との契約上の義務を果たし、法的トラブルを回避しました。最終的に、ScriptX 1.5を使用して出荷されたマルチメディアコンテンツプロジェクトは2つだけでした。1つはスウェーデンのヨーテボリにあるLinné Dataが開発したスウェーデン国立百科事典NationalencyklopedinのCD-ROM版です。もう1つはインタラクティブミュージックのタイトルRobert WinterのCrazy for Ragtimeです。
カレイダの後
数か月のうちに、ScriptX の開発は Apple 社内で衰退し、残った従業員は Apple 内の他の仕事に移るか、業界の他の企業に移りました。Director アプリケーションはしばらくの間、マルチメディア市場で大きな力を持ち続けましたが、Flashに取って代わられ、置き換えられました。Flash の初期バージョンは、多くの点で ScriptX のクローンであり、イベント駆動型言語と類似のリソース要件を備えた小さなプラグイン ランタイムを使用しています。
説明
スクリプトX
ScriptX の主任ソフトウェア設計者は、オーストラリア生まれのコンピュータ科学者John Wainwrightでした。ScriptX は、Wainwright が Kaleida に入社する前に開発し、会社設立時に同社に売却した Objects in C と呼ばれる大規模なライブラリを使用して C で実装されました。Objects in C は、プリプロセッサ ディレクティブを使用してライブラリ内のオブジェクト システムをシミュレートします。ライブラリには 240 を超えるクラスがあり、その多くはマルチメディアをサポートし、カスタマイズされたユーザー インターフェイスを作成するように設計されています。配列やリンク リストなどの一般的なデータ構造は、ライブラリの コレクション クラスとして実装されました。
ScriptX はオブジェクト指向のスクリプト言語で、「Smalltalk、Dylan、Hypertalk、Lisp、Object Logo、C++、Pascal」の設計要素を使用しています。[13] Smalltalk とクラス、オブジェクト、継承の概念を共有していますが、クラスとオブジェクトの両方で多重継承と実行時のオブジェクトの動的バインディングも備えています。ScriptX にはプリミティブ データ型がなく、整数もオブジェクトとして定義されています。すべてのオブジェクトはクラスのインスタンスであり、クラスは MetaClass オブジェクトのインスタンスです。LISP と同様に、ステートメントはなく、ScriptX プログラムのすべての行は値を返す式です。[13]
ScriptX は、メモリを処理するために別のスレッドで実行されるガベージ コレクションを使用し、永続的なコレクション用のオブジェクト ストアを備えています。ScriptX はマルチスレッドをサポートしていますが、マルチプロセスはサポートしていません。また、イベントや同時実行スレッドなどの低レベルのオペレーティング システム機能のスクリプト制御を提供します。初期のマルチメディア開発ツールには、オペレーティング システム自身のクロックをポーリングする以外に、プレゼンテーションを同期する技術がありませんでした。Dr . Dobb's Journalに書いた Ray Valdés は、「重要な ScriptX 機能はClockクラスであり、マルチメディア アプリに必要なアクションのタイミング シーケンスを同期する機能を提供します」と述べています。[13]
Kaleida Labsの閉鎖後、ウェインライトはMaxScriptの主任設計者となった。MaxScriptは3D Studio Maxのスクリプト言語で、 Maxis Simsプログラムなどのゲームや3Dアプリケーションのコンテンツ処理に使用されている。[14]これはScriptXによく似ている。
例
次のコードはScriptX言語のユニークな構文を示しています。これはDon Hopkinsが書いたより大きなプログラムでマウストラッキングを処理するクラスの一部です。[15] sendTrackDropメソッドはtrackDropメッセージを別のオブジェクトに送信します。
メソッド sendTrackDrop self {class Tracker} サービス ターゲット xy データ doit -> (
ローカル座標 := 新しいポイント
繰り返し (true) 実行 (
if (canObjectDo target trackDrop) then (
戻り値 (trackDrop ターゲット サービス xy データ doit)
) それ以外 (
座標.x := x
座標.y := y
ローカル t := findFirstAtPoint ターゲット座標
if (t == empty) は false を返す
x := x - tx
y := y - ty
ターゲット := t
)
)
)
このコードは、オブジェクト間で trackDrop メッセージを転送する役割を担い、ScriptX 言語のいくつかの珍しい機能を示しています。注目すべき点としては:=、Pascal のような代入演算子があります。
local変数は、そのスコープを決定するためにマークされます。[13]これは、ほとんどの現代言語とは逆で、「ローカル」がデフォルトのスコープであり、このような宣言は冗長です。従来の言語では、スコープの可視性はソースコードファイル内の場所によって定義されます。つまり、メソッド内で宣言された変数はそのメソッドに対してローカルであり、メソッドや他の宣言の外部で定義された変数はクラス(またはプログラム)に対してグローバルです。
ファイルベースのスコープがないことは、ScriptX 言語や、特にDylanなどの類似言語の基本機能です。Java などの従来の言語では、クラスや類似の構成要素は、1 つのファイル、または少なくとも「マスター ファイル」内で定義されます。スコープは、ファイル システムと、その中のコードの場所によって定義されます。対照的に、ScriptX では、任意のファイルの任意のクラスに任意のメソッドを定義できます。この例では、メソッドはクラスsendTrackDropに適用されておりTracker、実行時にアクセスされる任意のファイル内に配置できます。これにより、プログラマーは、追加の構文を犠牲にして、クラスまたは機能ごとにコードを整理できます。
参考文献
- ^ ローレンス・フィッシャー (1992 年 6 月 24 日)。「Apple-IBM ベンチャー部門の責任者が任命される」。ニューヨーク・タイムズ。
- ^ ab Janice Maloney、「ユニバーサル互換性をもたらすマルチメディア標準」、2016年3月4日アーカイブ、Wayback Machine、デジタルメディア、1993年7月
- ^ ジョナサン・ウェーバー(1992年9月27日)。「AppleとIBMの合弁会社Kaleida Labsは、マルチメディア技術の開発方法を模索している」ロサンゼルス・タイムズ。2016年3月6日時点のオリジナルよりアーカイブ。
- ^ ジョナサン・ウェーバー(1993年7月16日)。「遅延と高コストの報告がある中、KaleidaのマルチメディアラボはIBMのベテランによって運営される」ロサンゼルス・タイムズ。2017年2月22日時点のオリジナルよりアーカイブ。
- ^ ラルフ・キング、「マルチメディア・カレイダ、遅延の中トップ役員を交代」ウォール・ストリート・ジャーナル、1993 年 7 月 18 日
- ^ ab ローリー・フリン (1994年5月15日). 「サウンドバイト; マーベリックがカレイダをリメイク」ニューヨーク・タイムズ.
- ^ Ray Valdés、「Kaleida の近況は?」、Dr. Dobbs Developer Update、1994 年 9 月 1 日
- ^ 「Kaleida Labs が ScriptS マルチメディア プログラムを出荷」。ニューヨーク タイムズ。1994 年 12 月 20 日。
- ^ abc ステファン・ソモジ、「Kaleida の ScriptX: 遅れているが時代を先取りしている」、Digital Media Perspective、1994 年 12 月 23 日
- ^ 「ScriptX と World Wide Web: グローバルにリンクし、ローカルに対話する」
- ^ ab エメリック、ドナルド、ラウンド、キンバリー (2000)。ウェブマーケティングとプロジェクト管理の探求。MIT プレス。p. 558。ISBN 9780130163967。
- ^ Julie Pitta (1995年11月18日). 「IBM、AppleがKaleida Labsへの投資を中止」ロサンゼルス・タイムズ. 2016年3月6日時点のオリジナルよりアーカイブ。
- ^ abcd Ray Valdés、「ScriptX の紹介」、ドブ博士のジャーナル、1994 年 11 月
- ^ Don Hopkins、「MaxScript によるシムズ キャラクター アニメーション パイプラインの自動化」
- ^ Don Hopkins、「TrackService: ScriptX 用のもう 1 つのイベント ハンドラー」、Kaleida Labs
さらに読む
- Kaleida Labs Inc. (1994). Scriptxアーキテクチャ ガイド。Addison Wesley。ISBN 0-201-40729-9。ScriptXバージョン 1.0に付属するドキュメント。
- Kaleida Labs Inc. (1994). ScriptX コア クラス リファレンス。Addison Wesley。ISBN 0-201-40730-2。ScriptXバージョン 1.0 に付属するドキュメント。
- Kaleida Labs Inc. (1996)。ScriptXアーキテクチャおよびコンポーネント ガイド。ScriptX バージョン 1.5 に付属するドキュメント。
- Kaleida Labs Inc. (1996) 。ScriptX コア クラス リファレンス。ScriptX バージョン 1.5 に付属するドキュメント。
- Kaleida Labs Inc. (1996) 。ScriptX 言語リファレンス。ScriptX バージョン 1.5 に付属するドキュメント。
- Kaleida Labs Inc. (1995)。ScriptX技術概要。
外部リンク
- ScriptX 概要ページ
- 米国特許 5,907,704インターネットでアクセス可能なオブジェクトを含むマルチメディア オーサリング システムにおけるインスタンス化されたオブジェクトの階層的カプセル化。(特許は現在Quark, Inc.に譲渡されています。)
- 現在も Kaleida に付与されている特許のリスト
