回答:
1つ目は古いライブラリ、2つ目は新しいライブラリです。
古い定義の事が好きdefstruct
、symbol-macrolet
、incf
、二定義しますが代わりにcl-defstruct
、cl-symbol-macrolet
とcl-incf
。
古いパッケージは、他のパッケージとの競合を回避するために、パッケージがすべての定義に「パッケージプレフィックス」を使用するという一般的な規則に従っていないため、廃止されました。古いものは名前空間を台無しにするのに対し、新しいものはで始まる識別子のみを使用するように注意していcl-
ます。
古いバージョンのEmacsのみが付属してcl
いますが、cl-lib
内部で古いバージョンを使用しcl
、同じ定義を新しい名前で再エクスポートするGNU ELPAからの前方互換性パッケージをインストールできます。
Emacsの新しいバージョンには、内部でcl-lib
使用しないreal が付属しています。cl
代わりに、cl
内部で使用cl-lib
し、同じ定義を古い名前で再エクスポートする下位互換性パッケージがあります。