This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.

Source for ticket #140

cc


    

changetime

2012-08-27 06:57:41

component

WG1 - Core

description

Are we removing the IEEE Scheme functions `quotient`, `remainder`, and `modulo` from WG1 Scheme?  If so, we need a special justification, due to the charter text:

  Existing features of IEEE Scheme may be removed only if a strong case can be made that they are fundamentally flawed. Insofar as practical, the language should be backwards compatible with the IEEE standard, the R5RS standard, and an appropriate subset of the R6RS standard.

Here's what DivisionRiastradh says:

  Unfortunately, most programming languages give nondescript names such as DIV(IDE), QUOT(IENT), MOD(ULO), and REM(AINDER) to these operations. The language should make clear to programmers what division operations their programs are performing, especially when negative dividends and divisors can arise, but perhaps may not often arise during testing.

  [...]

  The R5RS gives the names `quotient` and `remainder` to the truncating division operator pair, and the name `modulo` to the remainder half of the flooring division operator pair. For all these three procedures in the R5RS, the dividend may be any integer, and the divisor may be any nonzero integer.

On the other hand, we may prefer relegating them to a backward-compatibility module.

id

140

keywords


    

milestone


    

owner

alexshinn

priority

major

reporter

cowan

resolution

wontfix

severity


    

status

closed

summary

Removing `quotient`, `remainder`, `modulo`

time

2011-02-03 06:17:13

type

defect

Changes

Change at time 2012-08-27 06:57:41

author

cowan

field

comment

newvalue


    

oldvalue

4

raw-time

1346025461821804

ticket

140

time

2012-08-27 06:57:41

Change at time 2012-08-27 06:57:41

author

cowan

field

resolution

newvalue

wontfix

oldvalue


    

raw-time

1346025461821804

ticket

140

time

2012-08-27 06:57:41

Change at time 2012-08-27 06:57:41

author

cowan

field

status

newvalue

closed

oldvalue

decided

raw-time

1346025461821804

ticket

140

time

2012-08-27 06:57:41

Change at time 2012-08-25 00:40:01

author

cowan

field

comment

newvalue

WG1 decided to make no change.

oldvalue

3

raw-time

1345830001291272

ticket

140

time

2012-08-25 00:40:01

Change at time 2012-08-25 00:40:01

author

cowan

field

status

newvalue

decided

oldvalue

reopened

raw-time

1345830001291272

ticket

140

time

2012-08-25 00:40:01

Change at time 2012-04-09 23:41:14

author

cowan

field

comment

newvalue

I'm reopening this ticket, because the circumstances have changed:

* We now have the R5RS library, which captures all the R5RS names including these.

* We no longer have the division library, so both old and new sets are in the base library, bloating it.

* We have set a precedent by adopting the R6RS names `inexact` and `exact`, so we are now interpreting the charter as saying that function documented in IEEE must not be removed, rather than that names in IEEE must not be changed, particularly since the old names are still available in another library.

oldvalue

2

raw-time

1333989674236454

ticket

140

time

2012-04-09 23:41:14

Change at time 2012-04-09 23:41:14

author

cowan

field

resolution

newvalue


    

oldvalue

fixed

raw-time

1333989674236454

ticket

140

time

2012-04-09 23:41:14

Change at time 2012-04-09 23:41:14

author

cowan

field

status

newvalue

reopened

oldvalue

closed

raw-time

1333989674236454

ticket

140

time

2012-04-09 23:41:14

Change at time 2011-07-10 18:07:16

author

alexshinn

field

comment

newvalue

We voted to keep these.

oldvalue

1

raw-time

1310296036000000

ticket

140

time

2011-07-10 18:07:16

Change at time 2011-07-10 18:07:16

author

alexshinn

field

resolution

newvalue

fixed

oldvalue


    

raw-time

1310296036000000

ticket

140

time

2011-07-10 18:07:16

Change at time 2011-07-10 18:07:16

author

alexshinn

field

status

newvalue

closed

oldvalue

new

raw-time

1310296036000000

ticket

140

time

2011-07-10 18:07:16