Re: no constants please Richard Kelsey (04 Jan 2004 18:11 UTC)
Re: no constants please felix (04 Jan 2004 19:25 UTC)
Re: no constants please Richard Kelsey (04 Jan 2004 20:08 UTC)
Re: no constants please Tom Lord (04 Jan 2004 21:13 UTC)
Re: no constants please Tom Lord (04 Jan 2004 21:43 UTC)
Re: no constants please Richard Kelsey (04 Jan 2004 22:59 UTC)
Re: no constants please Tom Lord (05 Jan 2004 00:50 UTC)
Re: no constants please Tom Lord (05 Jan 2004 01:19 UTC)
Re: no constants please Richard Kelsey (05 Jan 2004 11:42 UTC)
Re: no constants please Tom Lord (05 Jan 2004 16:26 UTC)
Re: no constants please Richard Kelsey (05 Jan 2004 17:49 UTC)
Re: no constants please Tom Lord (05 Jan 2004 18:24 UTC)
Re: no constants please Michael Sperber (05 Jan 2004 18:48 UTC)
Re: no constants please Tom Lord (05 Jan 2004 22:00 UTC)
Re: no constants please Michael Sperber (06 Jan 2004 07:42 UTC)
I don't believe in "(may GC)" Tom Lord (05 Jan 2004 00:55 UTC)
Re: I don't believe in "(may GC)" Richard Kelsey (05 Jan 2004 12:07 UTC)
Re: I don't believe in "(may GC)" Shiro Kawai (05 Jan 2004 12:45 UTC)
Re: I don't believe in "(may GC)" bear (05 Jan 2004 18:16 UTC)
Re: I don't believe in "(may GC)" Tom Lord (05 Jan 2004 16:35 UTC)
Re: I don't believe in "(may GC)" bear (05 Jan 2004 17:54 UTC)
Re: I don't believe in "(may GC)" tb@xxxxxx (06 Jan 2004 01:39 UTC)
Re: I don't believe in "(may GC)" Michael Sperber (06 Jan 2004 07:39 UTC)
Re: no constants please Tom Lord (05 Jan 2004 01:05 UTC)
Re: no constants please Tom Lord (05 Jan 2004 01:12 UTC)
Re: no constants please Richard Kelsey (05 Jan 2004 12:17 UTC)
Re: no constants please Tom Lord (05 Jan 2004 17:40 UTC)
Re: no constants please Michael Sperber (05 Jan 2004 19:03 UTC)
Re: no constants please tb@xxxxxx (06 Jan 2004 01:37 UTC)
Re: no constants please Richard Kelsey (06 Jan 2004 02:15 UTC)
Re: no constants please Tom Lord (06 Jan 2004 02:29 UTC)
Re: no constants please tb@xxxxxx (06 Jan 2004 02:31 UTC)
Re: no constants please Richard Kelsey (06 Jan 2004 03:10 UTC)
Re: no constants please tb@xxxxxx (06 Jan 2004 03:14 UTC)
Re: no constants please Tom Lord (06 Jan 2004 04:06 UTC)

Re: no constants please Richard Kelsey 04 Jan 2004 22:58 UTC

   Date: Sun, 4 Jan 2004 14:09:20 -0800 (PST)
   From: Tom Lord <xxxxxx@emf.net>

   If this issue were _only_ about threads, that might be a reasonable
   argument.  (It also might not: one could argue that you shouldn't
   finalize a SRFI which is demonstrably unsuitable for threaded
   situations.)

The proposed SRFI works fine with threads, as long as those
threads do not require interrupting the C code at arbitrary
points.

   But the problems with the current FFI include issues with
   single-threaded, no-async-issue Scheme implementations including:

   ~ don't handle read/write barriers properly
   ~ don't handle transient root set members properly

You haven't convinced me on these points.  You have given examples
of misuses of the FFI, in which values are left in unprotected
locations during a call to a possibly-GCing procedure.  Yes, then
you get problems, and yes, that is a drawback to the proposed FFI.
But it doesn't mean that the proposed FFI doesn't work with threads,
read/write barriers, or transient root set members.  It means that
it takes some care to use properly.

   Pika-style conventions do not make those presumptions:  there is a
   comprehensive abstraction barrier there between the Scheme value
   representations, the heap invariants, and the C code.

   The latter is far less restrictive on Scheme implementations.

Yes, and more overhead for accessing Scheme values from C.
It's a tradeoff.  We made it one way and you would make it
another.
                                       -Richard