有开源的通用Lisp COM包装器吗?

有开源的通用Lisp COM包装器吗?,com,winapi,lisp,common-lisp,Com,Winapi,Lisp,Common Lisp,我有一个用SBCL编写的应用程序,它作为可执行文件部署在Windows上。它需要通过COM与Excel交互,通过DDE与另一个应用程序交互(我知道,我知道) DDE非常简单,我可以很快地将我需要的东西打包到一个非常小、易于维护的C库中。另一方面,COM似乎是一个足够大的项目,可以通过Win32 extensions库在Python中实现这部分功能 对我来说,这很烦人,因为很多CL代码都被一些与主项目集成程度不同的Python所扩充 我看到LispWorks和Allegro CL都允许COM交互,

我有一个用SBCL编写的应用程序,它作为可执行文件部署在Windows上。它需要通过COM与Excel交互,通过DDE与另一个应用程序交互(我知道,我知道)

DDE非常简单,我可以很快地将我需要的东西打包到一个非常小、易于维护的C库中。另一方面,COM似乎是一个足够大的项目,可以通过Win32 extensions库在Python中实现这部分功能

对我来说,这很烦人,因为很多CL代码都被一些与主项目集成程度不同的Python所扩充

我看到LispWorks和Allegro CL都允许COM交互,但无法通过google或CLiki找到任何相同功能的开源实现


这样的东西存在吗?

我不知道开源COM包装器可以在多个CL实现上工作,包括SBCL

您最好的选择可能是查看Corman Lisp,它是Windows特定的,并且包含一个COM服务器。查看其功能页面:

我的印象是Corman Lisp不再受到积极支持,但我可能在这一点上大错特错,但至少您可以从其源代码中获得一些有用的信息。

有一些绑定被称为,使用CFFI实现


您要求Excel集成,因此cl-win32ole中包含的内容可能会引起您的兴趣:

当您说“我不知道开源COM包装程序可用于多个cl实现”时,你知道有哪家公司甚至在一个非商业性的实现上工作吗?所以他们以250美元的价格出售CCL,只是为了不提供任何支持?听起来有点可疑不?格雷特克:仅供参考,“CCL”通常指Clozure CL(以前是OpenMCL(以前是Coral Common Lisp)《未来》杂志:不,直到大卫·安维雷德。我在心里回答了这个问题,很抱歉给人留下了错误的印象。格雷特克:也许我应该用不同的措辞,但它绝对不是可疑的。也许我应该说OP应该先查看科尔曼·里斯普的论坛,查看它的状态。