「Swank-Clojure」は正確に何をしていますか、そして「Swank-something_else」がありますか?

StackOverflow https://stackoverflow.com/questions/3550971

  •  30-09-2019
  •  | 
  •  

質問

私の表面的な理解は、「スワンククロジュア」が「MXスライム接続」を可能にするということです。つまり、Clojureサーバーへの「Lein Swank」のような接続を与えます。私の理解は正しいですか?そうでない場合、スワンクの目的は何ですか?

では、他のLISPのような実装のための「Swank-someThing_else」はありますか?たとえば、Swank-Clisp?

「MX Slime」でSlime/Clojureを使用するために「Swank-Clojure」が必要ですか?

追加した

私はこれを見つけました リンク かなり便利です。

役に立ちましたか?

解決

SlimeとSwankは、LISPプログラムを実行およびデバッグするためのクライアントサーバーアーキテクチャを形成します。 SlimeはEmacs Frontendで、Swankはバックエンドです。その間に、それらはネットワークソケットを作成し、メッセージ(S-Expressions)を越えて送信して通信します。要するに、それはEMACSと実際のLISPバックエンドの間のRPCメカニズムにすぎません。

SlimeとSwankが別々であるという事実は、ネットワーク上で接続されており、RPCメッセージを介して通信することは、どこにでもいることができることを意味します。そのため、スライムはリモートホスト/ポートに接続してスワンクできます。あなたが見る他のすべての形(レイン・スワンクなど)は同じことをします。彼らはスライムのリモート接続を可能にするポートに焦点を当て始めます。

Swank-ClojureはSwankのClojure港です。もともとSwank-Clojureには、Swank-Clojure.elというヘルパーElispファイルが付属していました。このファイルの仕事は、クラスパス、JVMパラメーターなどのスワンクパラメーターの手動セットアップを有効にすることでした。Leinのような他のツールが後で登場したため、Swank-Clojure.elは非推奨でした。しかし、それはまだ上にあります: http://github.com/vu3rdd/swank-clojure-extra また、LeinプロジェクトでSwankを開始できるMX Swank-Clojure-Projectを提供します。

スライムは、一般的なLISPに由来している(そしてまだ積極的に開発されている)ことに注意する必要があります。 SwankのClojureポートには、元のSlime/Swankバージョンが享受している機能のサブセットのみがあります。スライムは、一般的なLISPのすべての主要なバリエーションに存在します。スキームには部分的なポートがあります48。 Contribディレクトリの下でいくつかの部分的な実装があります。

Swankがすでにポートで実行されていることがわかっている場合は、Slime-Connectを使用してください。プロジェクトでSlimeを使用したい場合は、Swank-Clojure-ProjectとLein Swankが行く方法のようです。

他のヒント

swank-clojure.el 非推奨です。使用しないでください。

あなたが必要です slime.el そして、あなたは持っている必要があります swank-clojure "1.2.1" あなたの開発者に依存します project.clj ファイル。

Swankは基本的に、Slimeを使用してEmacsから接続するサーバーです。それは、それが実行されているLISPプロセスによって実行したいものをemacsから通過しました。

使用する必要があります M-x slime-connect で始めた後、スワンクサーバーに接続する lein swank.

Swankは、Emacs SlimeやMacintoshのMclide Lisp Development環境など、Swankクライアントのサーバーのカウンターパートです。 Swankサーバーは、多くの一般的なLISP実装やClojureやGambit/SchemeなどのLISP方言に存在します。

私の理解では、SlimeはEMACSパーツ(クライアント)、Swankは一般的なLISPパート(サーバー)、Swank-ClojureはオリジナルではなくSwank ServerのClojure実装です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top