<<>> <> <> <> <> <<>> DIRECTORY ; FutureValues: CEDAR DEFINITIONS = BEGIN FutureValue: TYPE = REF FutureValueObj; FutureValueObj: TYPE = MONITORED RECORD [ value: REF, available: BOOL ¬ FALSE, availableNow: CONDITION ]; <> Create: PROC [] RETURNS [fv: FutureValue]; <> WaitFor: PROC [fv: FutureValue, useTimeout: BOOL ¬ FALSE, timeoutMSec: CARD ¬ 1000]; <> <> NowAvailable: PROC [fv: FutureValue]; <> END.