2016-07-26T14:00:06+09:00

ModuleLoader のマニュアルのドラフト - ModuleLoader とは ?

OS X 10.9 で登場した AppleScript Libraries との相互運用機能を追加した ModuleLoader の公開の準備を進めている。

とりあえず、現在の最新ビルドをどうぞ。解凍したら、~/Library/ScriptingAdditions/ に置いてください。

マニュアルを一新しようとして四苦八苦している。何せ分量が多いし英語マニュアルも書いているので、なかなか筆が進まない。できたところから公開することにした。

まずは、イントロ部分。

ModuleLoader は AppleScript のライブラリシステムです。必要最小限の記述で外部のライブラリ/モジュールとしてのスクリプトをロードすることができます。

OS X 10.9 から AppleScript にライブラリ機能がサポートが追加されました(AppleScript Libraries) 。ModuleLoader は、それ以前の2006年から継続的に開発/メンテナンスされてきたライブラリシステムです。おおよそ AppleScript Libraries と同じことができます。

すなわち、

ある程度の規模のプログラムを作るときには、コードを複数のファイルに分割して管理する必要があるでしょう。また、汎用的に他のプログラムで使用できるコードを独立したファイルに保存し、複数のプログラムで共有することも必要でしょう。そのように複数のプログラムで共有されるコードを収めたファイルはライブラリもしくはモジュールと呼ばれます。

ModuleLoader や AppleScript Libraries を使えば、他の高機能なスクリプト言語(Perl、Ruby など)と同様に、名前を指定するだけライブラリを検索/ロードすることで、プログラムを複数のライブラリで構成し、ソースコードを複数のプログラム間で容易に共有できるようにします。

OS X 10.8 以前の AppleScript では load script をコマンドを使って、ファイルを複数に分割して開発することができます(see AppleScript ソースコードの分割と共有)。しかし、ロードするライブラリへのパスは自分で管理しなければなりません。このため、ライブラリのロード/管理が煩雑になります。また、ライブラリ間での共有されるモジュールの管理も至難の技です。ModuleLoader が大いに役に立てるでしょう。

OS X 10.9 以降では、AppleScript Libraries がファーストチョイスになるでしょう。ModuleLoader は、AppleScript Libraries と共に使うことができ AppleScript Libraries に次のような機能を追加します。