In article <87pqk2k64l.fsf@...>,
Teemu Likonen <tlikonen@...> wrote:
> * 2011-08-18T17:36:00+02:00 * Arne Klein wrote:
> > Is there any recommendation which one to use?
> Yes, here's mine: use CFFI because then you write higher-level code. It
> abstracts away implementation-specific code. Common language for all
> Common Lisp programmers is good. Scattered communities is bad.
I'm all for portable code, but it is patently false to assert that
smoothing over difference in systems until convergence to a common
subset of features leads to a higher-level interface. If anything, it
clearly has the opposite effect. There are multiple meanings to the
word "abstract", and some programmers seem to harmfully conflate them,
sometimes in the same sentence.
There are fewer SB-ALIEN users, and parts of it can be obscure. That's
a good reason to use CFFI, even if you're not worried about using other
On the other hand, SB-ALIEN hooks usefully in SBCL's type system, giving
you more, more useful, diagnoses and warnings at compile-time.