对比CFFI与FFI

时间:2014-04-07 13:25:30

标签: ffi clisp cffi

我从注释32.3中看到,clisp有一个FFI系统。我还在http://common-lisp.net/project/cffi/看到了一个CFFI项目。

有知识渊博的人请详细说明这两个系统之间的任何重要差异吗?哪个更好' /'更正式推荐' /'更有效率和/或更可靠'等?

非常感谢,R。

1 个答案:

答案 0 :(得分:1)

CLISP FFI是非常高级的,并且必然是CLISP特定的(就像SBCL FFI是SBCL特定的& c)。

CFFI是一个交叉实现的兼容层,它更低级,它依赖底层实现的FFI来工作。

因此,如果你已经开始使用特定的实现,那么你应该学习它自己的FFI。

如果要编写将在许多不同实现上运行的代码,请使用CFFI。

PS。低级别与高级别意味着,您需要编写更多字符以在CFFI中实现与CLISP FFI相同的效果;结果也可能在CLISP FFI中运行得更快。