Subject: compile Maxima file containing a large list
From: Steve Haflich
Date: Tue, 07 Aug 2012 23:50:01 -0700
Volker van Nek <volkervannek at gmail.com> wrote:
CLISP 2.49
[1]> (with-standard-io-syntax *print-radix*)
NIL
So it seems the CLISP printer doesn't conform to the ANS, which says
22.1.3.1.1 Printing Integers
Integers are printed in the radix specified by the current output base
in positional notation, most significant digit first. If appropriate, a
radix specifier can be printed; see *print-radix*. If an integer is
negative, a minus sign is printed and then the absolute value of the
integer is printed. The integer zero is represented by the single digit
0 and never has a sign. A decimal point might be printed, depending on
the value of *print-radix*.
and the description of *print-radix* is
If the value of *print-radix* is true, the printer will print a radix
specifier to indicate the radix in which it is printing a rational
number. The radix specifier is always printed using lowercase
letters. If *print-base* is 2, 8, or 16, then the radix specifier used
is #b, #o, or #x, respectively. For integers, base ten is indicated by a
trailing decimal point instead of a leading radix specifier; for ratios,
#10r is used.
The difference between "10" and "10." is the treatment by the reader:
cl-user(29): (let ((*read-base* 16)) (read-from-string "(10 10.)"))
(16 10)