[Openmcl-devel] sharing data between fortran and OpenMCL

Cyrus Harmon ch-openmcl at bobobeach.com
Sat Oct 2 22:01:36 PDT 2004


On Oct 2, 2004, at 2:46 PM, Gary Byers wrote:

> [Cyrus posted this reply from another email account.  I happened to
> notice this, went to the mailing list administration page - which I
> don't do as often as I should - to "approve" the message, and spent
> the next half hour or so watching a beachball cursor as Safari and
> Apache and Mailman struggled to present a few hundred spam messages
> with an occasional on-topic message thrown in.

Sorry 'bout the mixup.

> I'm not sure if Cyrus' message ever made it to the list; I was CC'ed
> separately.

I think it did.

> Since OpenMCL is preemptively scheduled and is not forced to use a
> partially conservative GC strategy, the only thing that that could
> work reliably is something like:
>
> (without-gcing
>   (#_operate_on_big_array (%pointer-from-lisp-array *the-big-array*)))

I like this. This sort of exists now for vectors with 
%vect-data-to-macptr, right?

> I'd be willing to implement this when I get a little time; I'm
> very strongly tempted to say that %POINTER-FROM-LISP-ARRAY should
> signal an error if the GC's enabled, or should  otherwise be closely
> coupled with the act of disabling the gc:
>
> (with-pointer-from-lisp-array (ptr *the-big-array*) ; implicitly 
> disables GC
>   (#_operate_on_big_array ptr)
>   ) ; illegal to reference ptr after this point

I like this even better!

Thanks,

Cyrus




More information about the Openmcl-devel mailing list