6

pip 要件ファイル、ruby gemfile、ノード package.json などに相当する Lisp は何ですか? asdf と quicklisp が適切に使用されているかどうかについては、完全にはわかりません。

4

4 に答える 4

1

まず、piprequirements.txtは ruby​​gem や node とは大きく異なりますpackage.json。前者は依存関係のみを指定しますが、後者は依存関係を含むパッケージを記述します。

Pythonpipも実際には、"eggs" と呼ばれる同様のパッケージ記述形式に依存しています。

rubygem にほぼ直接的に相当するものは ASDF形式 defsystemで、通常はファイルに配置されます<system-name>.asd(「システム」は、他の言語でパッケージ、モジュール、またはライブラリと呼ばれるものを表す Lisp の用語です。より詳細な説明については、こちらを参照してください)。

主な違いは次の 2 つです。

  • ASDF では、システムのビルド (およびロード、テストなど) の方法を指定することもできます (makefile と多少同等です) — 私の知る限り、rubygems やノードにはそのような概念はまったくありません

  • gem や node とは異なり、ASDF はパッケージをダウンロードしてインストールするメカニズムを提供しません。ここでquicklisp出番です — ASDF システムのフェッチを扱います。しかし、ここでの唯一の方法ではありません: 歴史的にql、ASDF ライブラリをインストールするための他のアプローチがありました。ASDF-Installclbuild

于 2013-11-03T06:57:39.257 に答える
1

クロット

ASDF および Quicklisp との関係については、他の回答が適切なアプローチを提供します。

指摘されたものと非常によく似た一般的なlispライブラリを使用できるようになりました.quicklispおよびQlotで利用できます。プロジェクトローカルの依存関係を指定するために使用されます。ruby の bundle と gemfile によく似ています。

Quicklisp バンドル

また、 2015-04-28で導入された、 quicklisp バンドルを使用できます。Quicklispライブラリ バンドルは、Quicklisp からエクスポートされ、Quicklisp を使用せずにロード可能な自己完結型のシステムのセットです。

于 2016-11-24T07:10:10.500 に答える