2番目に悩んだこと

Lispで将棋プログラムを書こうと思った後、2番目に悩んだ事は既存のGUI(CSA将棋、MyBona、将棋所など)を使用させてもらうのなら、いったいどうやってLispで書いたプログラムとインターフェースを取るかと言う事でした。
そもそも、そこら辺にあるフリーのLisp処理系で処理系から独立した実行可能形式(EXEやDLL)モジュールをコンパイルする事で作成できるかどうかも良く分かりませんでした。
Allegro Common Lispのような商用の処理系ならそういう事が得意なのは分かっていましたが、KCL(GNU Common Lisp)、CLISP、ECLのようなフリーの処理系でもできるのか?
いろいろと分からないので、この前ある掲示板サイトで質問してみました。

実行可能形式のモジュールは何とか作れそうな(作れる処理系が存在する)のですが、既存のGUIとインターフェース可能なのかどうかがどうにも分かりません。
つまりGUIの方からLispで書いたプログラムを呼び出して、パラメータを受け渡せるのかどうか?
Lisp処理系の側からCで書かれたプログラムをライブラリ化して呼び出すのは良く行われていますが、その逆は可能なのか?

そもそも私自身がCSA将棋やMyBona、将棋所がどのように思考エンジンとやりとりしてるのか良く分かっていなかったので質問自体が曖昧で詳しく答えてもらえるはずが無かったのです。

それでも「Lisp処理系とSocketで通信するDLLモジュールを作成し、それがGUIからコマンドを受け取りそのまま思考エンジンに(Socket通信で)渡せば良いのでは?」と言うアドバイスをもらい、その方針で行けば良いかなあと今は考えています。

特にLispで書いたソースをコンパイルした後のEXE(あるいはDLL?)だけでなく、Lisp処理系の上で動いている開発途中のプログラムもGUIとインターフェースして動作させながらデバッグできたらと思っています。
こちらはちょっと難しいのかも知れませんが、その場合デバッグ用途専用のGUIを自作する必要が出て来ます。