[Openmcl-devel] Grand Central Dispatch and CCL

Gary Byers gb at clozure.com
Tue Sep 15 01:08:24 UTC 2009

On Mon, 14 Sep 2009, Matthew D. Swank wrote:

> On Sat, 12 Sep 2009 22:19:55 -0500
> "Matthew D. Swank" <akopa at charter.net> wrote:
>> Can Clozure-CL interact in any meaningful way with Grand Central
>> Dispatch?  Is it possible to construct blocks to be scheduled from
>> Lisp using the CCL ffi?
>> Matt
> So no then...
> Is the question to flawed to deserve and answer, or does no-one know?

Or does no one have time to answer a question asked on a weekend by
the following Monday ?

> I haven't been able to find it yet, but shouldn't there an API for
> constructing blocks using the compiled runtime (e.g. Give us a function
> pointer and some representation of context, and we can totally give you
> a pointer to block object that can be put into the series of tubes
> for scheduling).

I think that you're right in thinking that most of what's involved
in being able to use GCD from CCL has to do with supporting blocks,
and other stuff in Cocoa is also likely to start depending on that
support as well.  It's obviously desirable for CCL to provide that
support, but I don't yet understand the issues well enough to know
whether that's trivial or what might make it non-trivial.

We have had a customer express interest in this and as we pursue that
it'll probably be necessary to think about it enough to have a less
handwavy notion of the work involved.  I suspect that there needs to
be at least some additional runtime support in the lisp (mostly having
to do with support for anonymous callbacks that can be
established/disestablished on the fly) and I vacillate between
thinking that there needs to be some compile-time support as well
and thinking that my reasons for believing that are invalid.

More information about the Openmcl-devel mailing list