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

Revised Real, Integer, and Conversion modules



A number of bugs have been fixed and comments were added to the following
modules now available from cognac:

  InOut.tar.gz
	OakIn.Mod   -- cleaned up to use just ISO modules (except for I/O)
	OakOut.Mod  -- cleaned up to use just ISO modules (except for I/O)

  Integers.tar.gz
	ConvTypes.Mod
	IntConv.Mod  -- more comments, uses ISO modules
        IntStr.Mod   -- more comments, uses ISO modules

  Reals.tar.gz
	LowReal.Mod  -- max range changes, uses ISO modules, more comments
	RealConv.Mod -- uses ISO modules, more comments
	RealStr.Mod  -- fixed conversion bugs and exponent bug
		     -- added more comments
	RealMath.Mod -- range enlarged to include MAX(REAL)..1/MAX(REAL)
		     -- revised algorithm for exp/ln
		     -- removed power2/log2
		     -- other functions now use exp/ln as basis
	OakMath.Mod  -- no changes
	ComplexMath.Mod -- no changes
	TestMath.mod -- utility to test RealMath functions, etc.
	TestMath.lis -- sample output from TestMath

  Longreals.tar.gz
	LowLong.Mod  -- max range changes, uses ISO modules, more comments
	LongConv.Mod -- uses ISO modules, more comments, exp char = 'E'
	LongStr.Mod  -- fixed conversion bugs and exponent bug
		     -- added more comments
	LongMath.Mod -- range enlarged to include MAX(LONGREAL)..1/MAX(LONGREAL)
		     -- removed power2/log2
	OakMathL.Mod -- no changes
	LongComplexMath.Mod -- no changes
	TestMathL.mod -- utility to test LongMath functions, etc.
	TestMathL.lis -- sample output from TestMathL

The OakOut.Mod module now uses the LongStr.RealToFloat and RealStr.RealToFloat
procedures whose operations may give different results (due to the ISO standard)
than you may be used to from Out.Mod. (e.g., when the exponent is 0, its
output must be suppressed according to ISO; and trailing zeros are not 
suppressed?; exponents can also be 1, 2, or 3 digits).

Is my reading of the ISO real string output correct?  Is there an equivalent
real string output format for the OakOut.Mod conversions I should be adhering
to?  I think that the defacto standard for OakOut.Mod appears to be to
always include exponents and to truncate trailing zeros.  This can be easily
added if everyone feels this is necessary.  Perhaps a flag in the LongStr
or RealStr utilities could be used to select between ISO Real format or
Oakwood Real format.

Michael G.