I've added a note to not-a-box/README.txt about futures: Chez exposes OS-level threads with limited safety guarantees. An implementation of futures can probably take advantage of threads with thread-unsafe primitives wrapped to divert to a a barrier when used in a future.
In other words, while we made futures work for Racket by ensuring that various future-safe primitives specifically cooperate, it looks like we can do the opposite on Chez: wrap future-unsafe primitives specifically. If that works, no changes are needed to Chez. Places probably "just work" by using OS-level threads and not sharing data among places. At Wed, 15 Feb 2017 20:49:42 +0000, James Swaine wrote: > How does this impact things that cannot work without special modification > to the runtime system like places and futures? > > On Wed, Feb 15, 2017 at 10:47 AM Matthew Flatt <[email protected]> wrote: > > > At Wed, 15 Feb 2017 11:40:20 -0500, "'John Clements' via Racket > > Developers" wrote: > > > > A Racket on Chez won't be compatible with the current Racket VM at the > > > > level of the C API. [...] > > > > > > You mention incompatibility at the level of the C API. I read that > > > three or four times before deciding that this isn’t about those > > > writing Racket packages that use FFI to interact with C libraries, > > > but rather those rare packages that want to use Racket’s C API to > > > interact with Racket. Is this correct? > > > > That's right. I expect Racket's FFI to mostly work as a layer on Chez's > > FFI, so most Racket programs that use `ffi/unsafe` can continue to work. > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Racket Developers" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to [email protected]. > > To post to this group, send email to [email protected]. > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/racket-dev/20170215164752.39C97650090%40mail- > svr1.cs.utah.edu > > . > > For more options, visit https://groups.google.com/d/optout. > > -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/58a4d3c1.8883620a.31292.2cbcSMTPIN_ADDED_MISSING%40gmr-mx.google.com. For more options, visit https://groups.google.com/d/optout.
