Removing `quotient`, `remainder`, `modulo`
|Reported by:||cowan||Owned by:||alexshinn|
|Component:||WG1 - Core||Keywords:|
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.
Change History (4)
comment:1 Changed 6 years ago by alexshinn
- Resolution set to fixed
- Status changed from new to closed
comment:2 Changed 5 years ago by cowan
- Resolution fixed deleted
- Status changed from closed to reopened