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

futures in cscheme



I have decided to play with the experimental futures system that comes
along with mit scheme.  Unfortunately there is no documentation and the
various primitives do not seem to behave the way the are described in
Halstead's Multilisp paper (they are also named differently which I
guess means they are meant to be different!!).  There seem to be
two primitives that do stuff to make processes, MAKE-INITIAL-PROCESS and
MAKE-CHEAP-FUTURE.  I can pass make-initial-process a thunk and make that
run, which works as the comments in future.c seem to imply (I have only
tried this with simple thunks like (lambda () (display 'fish)))

Make-cheap-future requires 3 arguments, "orig" "user-code" and "name".  
I guess that the second is a thunk for the code of the future but cannot
figure out the other 2.  I have tried silly values like 0 and 'a and that
seems to allow make-cheap-future to return a thing which returns TRUE
in response to the (future?) operator.  But now i dont know how to use
this future at all.  

Help!! can anyone help me???  Has anyone got some documentation on
futures or some sample code I could look at?


Thanks,

Simon Kaplan
(kaplan@a.cs.uiuc.edu)

ps: If it makes a difference I am running an hp9000/s320.