[R6RS] A nit for R6RS: `expt' specification

Alan Bawden Alan
Mon Oct 11 18:32:52 EDT 2004

[ I sent this message to "rrrs-authors at zurich.csail.mit.edu" earlier today,
  but really, I?should have sent it here. ]

   From: Aubrey Jaffer <agj at alum.mit.edu>

     (expt 0 -255) ==> 0   ;!

   The statement from R5RS:

     0^z is 1 if z = 0 and 0 otherwise.

R5RS really does say that, doesn't it.  Ick.  I think this is probably an
oversight.  We were attempting to follow Common Lisp and APL when it came
to boundary conditions and branch cuts.  The Common Lisp specification says

		/  1		if z = 0
	0^z =	{  0		if Re(z) > 0
		\  error	otherwise

I would propose that R6RS should say the same thing.

More information about the R6RS mailing list