-- COGRandomImpl.mesa: Random reals (implem.)
-- last modified by Stolfi - October 11, 1982 11:58 am
-- To do: invent/find better random number generator
-- compile COGRandomImpl
DIRECTORY
COGRandom,
Real USING [Float],
Random USING [Choose];
COGRandomImpl: CEDAR PROGRAM
IMPORTS Random, Real
EXPORTS COGRandom = TRUSTED
BEGIN OPEN COGRandom, Real;
FLInt: REAL = Float [LAST[INT]];
Toss: PUBLIC PROC [min, max: REAL] RETURNS [r: REAL] = TRUSTED
{RETURN [min + (max-min)*((0.5+Float[Random.Choose[0, LAST[INT]]])/FLInt)]};
END.