DIRECTORY BigCardinals USING [BigCARD], Rope USING [ROPE]; BigIntegers: CEDAR DEFINITIONS = BEGIN BigINT: TYPE = REF BigINTBody; BigINTBody: TYPE; Sign: TYPE = {plus, minus}; BigFromRope: PROC [text: Rope.ROPE, base: [2..36] _ 10] RETURNS [BigINT]; RopeFromBig: PROC [big: BigINT, base: [2..36] _ 10] RETURNS [Rope.ROPE]; BigFromSmall: PROC [small: INT] RETURNS [BigINT]; SmallFromBig: PROC [big: BigINT] RETURNS [INT]; Add: PROC [big1, big2: BigINT] RETURNS [BigINT]; Sub: PROC [big1, big2: BigINT] RETURNS [BigINT]; Mul: PROC [big1, big2: BigINT] RETURNS [BigINT]; Div: PROC [big1, big2: BigINT] RETURNS [BigINT]; Mod: PROC [big1, big2: BigINT] RETURNS [BigINT]; Neg: PROC [big1: BigINT] RETURNS [BigINT]; Abs: PROC [big1: BigINT] RETURNS [BigCardinals.BigCARD]; Sgn: PROC [big1: BigINT] RETURNS [Sign]; -- sign of zero is plus -- BigFromBigCARD: PROC [bc: BigCardinals.BigCARD, sign: Sign] RETURNS [BigINT]; END. ͺBigIntegers.Mesa Copyright Σ 1988 by Xerox Corporation. All rights reserved. James Rauen, June 20, 1988 4:34:50 pm PDT James Rauen, July 16, 1988 5:11:25 pm PDT Κ₯˜™Icode™