Q CompileIt! ってなに?
A HyperTalk を使って XCMD や XFCN を作るコンパイラです。日頃慣れ親しんだ HyperTalk で XCMD を作れます。Royal Software の商品です。
Q コンパイラってなに?
A CPU が直接実行できるコードを出力するソフトです。HyperCard はテキストのままの HyperTalk を読み、解釈しながら実行するので、速度が望めません。しかしコンパイラを通したコードは CPU が直接高速で実行します。
Q ボタンスクリプトをコンパイル出来る?
A CompileIt! は HyperTalk で書いたハンドラをコンパイルします。例えば on test 〜 end test というハンドラをコンパイルすると、test という名前の XCMD が作られます。 function myFunc 〜 end myFunc をコンパイルすると、myFunc という名前の XFCN が作られます。既存の HyperTalk と、コンパイルした XCMD/XFCN とをうまく組み合わせて使うのがコツです。
Q XCMD ってなに?
A HyperCard に組み込んで、HyperTalk を強化するものです。HyperCard 版の機能拡張、またはプラグインと考えて下さい。'XCMD' 'XFCN' というタイプのリソースの形をしており、これをインストールしたスタック上で、その機能を利用することが出来ます。UDI's XCMD Library には、私の作った XCMD があります。
Q C言語や Pascal の知識は必要?
A CompileIt! の魅力のひとつは、HyperTalk を使って ToolBox にアクセス出来ることです。ToolBox は Pascal やC言語でアクセスするのに便利に作られているので、これらの知識があるに越したことはありません。でも、無くても大丈夫です。
Q ToolBox ってなに?
A マックの中にある便利なルーチン集です。最近は API という呼びかたの方が一般的なようです。ウィンドウをコントロールするルーチン、メニューを作るルーチン、サウンドを鳴らすルーチン、ファイルを読み書きするルーチンなど、様々なものが揃っています。XCMD から ToolBox を利用すれば、マックが本来持っている機能のほとんどを HyperCard から利用することが出来ます。
Q C言語に挫折しましたが・・・
A そういう人にお奨めしたいです。CompileIt! は HyperTalk が基本ですから、変数宣言やキャストで悩む必要がありません。肩の力を抜いてプログラミングが出来ます。またすでにC言語を使って XCMD を作っている方にもお奨め出来ます。
Q CompileIt! はどこで買える?
A Royal Software のホームページで買えます( このへんから )。最新バージョンは 2.6.1 で、価格は $199.95 です。注文用紙に必要事項を書き込んで送信すれば、CompileIt! が1.5メガくらいのバイナリメールで届きます。1ドル120円として大体2.4万円前後ですね。 Acrobat で読めるマニュアル(PDFファイル)が付属していますが、紙のマニュアルは別売りのようです。
Q CompileIt! は日本でも買える?
A 日本でも CompileIt! を扱っていたショップがありました。私は今は亡きハイパークラフトで version 2.1 を2万円前後で買った覚えがあります。しかし今はパッケージ版そのものが無くなって通販専門になっていると思われるので、Royal Software のホムペから注文するのが手っ取り早いでしょう。
Q Royal Software に注文したのに音沙汰無しです
A Royal Software の対応状況にはムラがあるようです。私も日本語マニュアルについての話し合いの最中に何度か連絡不能になりました。根気よく催促のメールを出すしか無いようです。ホムペもときどきアクセス不能になってますね。困ったもんです。
Q 日本語版は?
A 日本語版はありません。CompileIt! 本体も、マニュアルも全て英語です。日本のショップで扱っているものも全て中身は英語です。日本語版マニュアルは本ホームページでリリース中です。
Q PPCやG3、G4には対応してる?
A CompileIt! 本体は HyperCard スタックですので、HyperCard が動く全てのマック及びマック互換機で利用出来ます。ただし出力するコードは 68K コードのみです。 PPCマックではエミュレーション動作になります。
Q OS9、OS Xには対応してる?
A CompileIt! 自身は OS 9.x でも動作しますが、シンボルテーブル( ToolBox の仕様を定義したもの)のサポートは OS 7.5 までで止まっています。つまり 8.0 以降に追加された ToolBox は(そのままでは)使うことが出来ません。
CompileIt! はこの欠点を補うために、ユーザーがシンボルテーブルを追加できるようになっています。本ホムペにも私が定義したシンボルテーブルがいくつか置いてあります。ただし、作成するコードが 68K に限定されるため、68K をサポートしない ToolBox(具体的には OS 8.5 以降に追加された機能)はどう頑張っても呼び出すことはできません。
OS X では CompileIt! 自身も、作られた XCMD も、Classic 環境で動作することになります。 OS X 上できちんと動くかどうかは Classic の互換性次第です。
Q SuperCard には対応してる?
A SuperTalk をコンパイル出来ます。CompileIt! をプロジェクトにコンバートすればデータフォークに外部命令を作成することも出来ます。ただし現在正式対応しているのは SuperCard 1.5 のみです。
CompileIt! で作った XCMD そのものは SuperCard 3.6 でもほぼ動作しますが、ウィンドウを扱うもの、フィールドに直接アクセスするものは互換性がありません。
Q REALbasic には対応してる?
A REALbasic 用の拡張命令も作れます。ただし XCMD から HyperCard のオブジェクト(カード、ウィンドウ、ボタン、フィールド)を参照しているものは動作しません。またテキストコールバックもサポートされないので、少々窮屈なプログラミングになるかも知れません。
Q Director には対応してる?
A Director 用の拡張命令も作れると思います。ただしオブジェクトの参照やテキストコールバックはサポートされません。マルチプラットホームやショックウェーブ対応は無理でしょう。
Q XCMD と XFCN 以外は作れない?
A 一応、コードリソース(機能拡張、DA、osax など)は一通り作れるようです。また XCMD をアプリ化するツールも別売りで用意されています。が、基本的には XCMD と XFCN 専用と考えた方がいいでしょう。
Q 作った XCMD のライセンスは?
A 作った XCMD はあなたのものです。Royal Software には CompileIt! の料金以外に何も支払う必要はありません。クレジット表記も不要です。
Q コンパイラ本体がスタックなんじゃ遅いのでは?
A まぁスタックですからそれなりです。 040 以上のマックなら不満は出ないでしょう。ただ HyperTalk でプログラム出来るということを考えたら、トータルの開発時間は他の言語より圧倒的に速いと思います。デバッガも優秀です。
Q CompileIt! の参考書はありませんか?
A CompileIt! についての参考書は皆無です。製品に付属するマニュアルと、CompileIt! 本体にあるヘルプやサンプルコードが一番の参考書でしょう。
NiftyServe の FJAMEA や FMACHYP のライブラリには田中求之氏の作品が多くあります。ほぼ全てが CompileIt! のソースコード付きであり、私は非常に御世話になりました。総括的なものとして同氏の「ガラパゴスコレクション」がお奨めです。ガラパゴスコレクションの CompileIt! ソースだけを集めた G-Collection-Script はとても勉強になります。
Q ToolBox の参考書はありませんか?
A 「Macintosh アプリケーションプログラミング」が現在日本語で読める最高の解説書になっています。InsideMacintosh はプログラマに必携のものですが、当面はこの本だけでもかなりのことが出来ます。
アップルが技術資料を公開するデベロッパーワールドジャパンには非常に興味深いものがたくさん転がっていますが、私のようなシロウトが参考に出来るものは数少ないです(哀)。 テックノートとFAQの一部が日本語化されて公開されています。