ð¥Syntax10.Scn.FntœSyntax10b.Scn.Fnt'FDBDDxÀMODULE MathL; (* MH 30.8.93; uses C library calls; *) (* 5.12.94 mh: made constants pi, e to be of type LONGREAL *) IMPORT S := SYSTEM, Kernel; CONST pi* = 3.14159265358979D0; e* = 2.71828182845904D0; VAR sqrt0: PROCEDURE (x: LONGREAL): LONGREAL; exp0: PROCEDURE (x: LONGREAL): LONGREAL; ln0: PROCEDURE (x: LONGREAL): LONGREAL; sin0: PROCEDURE (x: LONGREAL): LONGREAL; cos0: PROCEDURE (x: LONGREAL): LONGREAL; arctan0: PROCEDURE (x: LONGREAL): LONGREAL; PROCEDURE sqrt* (x: LONGREAL): LONGREAL; BEGIN RETURN sqrt0(x) END sqrt; PROCEDURE exp* (x: LONGREAL): LONGREAL; BEGIN RETURN exp0(x) END exp; PROCEDURE ln* (x: LONGREAL): LONGREAL; BEGIN RETURN ln0(x) END ln; PROCEDURE sin* (x: LONGREAL): LONGREAL; BEGIN RETURN sin0(x) END sin; PROCEDURE cos* (x: LONGREAL): LONGREAL; BEGIN RETURN cos0(x) END cos; PROCEDURE arctan* (x: LONGREAL): LONGREAL; BEGIN RETURN arctan0(x) END arctan; BEGIN Kernel.GetAdr(0, "sqrt", S.VAL(LONGINT, sqrt0)); Kernel.GetAdr(0, "exp", S.VAL(LONGINT, exp0)); Kernel.GetAdr(0, "ln", S.VAL(LONGINT, ln0)); Kernel.GetAdr(0, "sin", S.VAL(LONGINT, sin0)); Kernel.GetAdr(0, "cos", S.VAL(LONGINT, cos0)); Kernel.GetAdr(0, "arctan", S.VAL(LONGINT, arctan0)); END MathL.