[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

What I want in R^5RS



   Date: Wed, 4 Dec 91 16:17:33 EST
   From: Marc Feeley <feeley@IRO.UMontreal.CA>

   Here is my wish list...  (Santa are you there?)

   1) Add support for multiprocessing/multitasking.  I would suggest
   FUTUREs because they are high-level, they have been studied for quite
   some time and can be implemented very efficiently (e.g. Mul-T and
   Gambit).  Also it would be nice to have a few primitives for locking,
   semaphores, etc.  Implicit forcing by strict operators would be
   optional (as it is currently for promises created with DELAY).  I
   suggest using the Katz/Weise semantics for continuations in the
   presence of FUTUREs (see L&FP90).

   2) Fix the semantics of DELAY so that it is coherent with that of FUTURE
   (that is that DELAY is just like FUTURE but the task only gets started
   when it is needed, i.e. FORCEd or TOUCHed).


Based on the results in my paper "Continuing into the Future: On the
interaction of futures and first-class continuations" in L&FP '90, I
would suggest that it is a bug to adopt FUTURES into Scheme until
someone comes up with suitable semantics for futures in a language
containing both continuations and side effects.
--------------------
Morry Katz
katz@cs.stanford.edu
--------------------