Next: , Previous: , Up: 概観   [Contents][Index]


1.2 構成

Common Lispパッケージは4つのファイルで構成されている:

cl.el

これは“主要な”ファイルであり、基本的関数とパッケージについての情報を 含む。このファイルは比較的コンパクト—約700行である。

cl-extra.el

このファイルはより大きく、より複雑または通常ではない関数を含む。 cadr関数のようなCommon Lispの基礎だけを使いたいパッケージがより 高度な関数のロードのオーバーヘッドを払わなくてよいように 切り離されている。

cl-seq.el

このファイルは、delete-ifassoc*のように列やリストに 作用する高度な関数の多くを含む。

cl-macs.el

このファイルは関数ではなくマクロに関するパッケージの機能を含む。 マクロは実行時ではなく呼び出される側がコンパイルされるときに 展開するので、マクロは一般的にバイトコンパイラ実行時 (または.emacsファイルのようにコンパイルされていないコード中で 使われるとき)のみ必要である。このパッケージのマクロの多くは、 コンパイルしない限りメモリを使わないようにcl-macs.elに 分離されている。

cl.elファイルはその他の3つのファイルの関数とマクロに 必要なすべてのautoloadコマンドを含む。 やらなければいけないことは、(require 'cl)と書き、cl.elが 必要なときにその他のファイルを引っ張れるようにすることだけである。

別のファイルcl-compat.elがあり、それは新しい パッケージにはもうない古いcl.elのいくつかのルーチンを 定義している。これはseteltzip-listsのような内部 ルーチン、defkeyword のような非難された機能、そして古い スタイルの多値機能のエミュレーションを含む。See 古いCLとの互換性.