I noticed quotient, remainder and modulo don't actually say how they round. The change below is what R5RS specifies, and what guile already does, if I'm not mistaken. * scheme-data.texi (Integer Operations): Describe how quotient, remainder, and modulo round their results. For ease of reading, the new text would be: - Scheme Procedure: quotient n d - Scheme Procedure: remainder n d Return the quotient or remainder from N divided by D. The quotient is rounded towards zero, and the remainder will have the same sign as N. In all cases quotient and remainder satisfy N = Q*D + R. (remainder 13 4) => 1 (remainder -13 4) => -1 - Scheme Procedure: modulo n d Return the remainder from N divided by D, with the same sign as D. (modulo 13 4) => 1 (modulo -13 4) => 3 (modulo 13 -4) => -1 (modulo -13 -4) => -3