Opened 6 years ago

Closed 5 years ago

#349 closed defect (wontfix)

Define exact integers to be at least 24 bits

Reported by: cowan Owned by: alexshinn
Priority: major Milestone:
Component: WG1 - Core Keywords:


Currently, R7RS (tracking R5RS) does not constrain the sizes of exact integers: in principle, the maximum exact integer supported by an implementation could be as small as 7 (though that would seriously limit the maximum sizes of strings, vectors, and bytevectors as well). R6RS requires systems to support "practically unlimited" size exact integers. It also requires that a subset of these exist, called fixnums, which must support at least the range -223 to 223-1. (Supposedly this range was chosen because it is the range of fixnums in MIT Scheme, and all other practical Schemes have larger ranges for their fixnums.) I propose that we adopt this range as the minimum range of R7RS exact integers.

The immediate issue here is that a module name may contain (non-negative) exact integers as well as identifiers in R7RS. For such names to be portable, there must be a portable range of exact integers.

Change History (4)

comment:1 Changed 6 years ago by aag

I understand the goal of this proposal, but it doesn't fit well with the idea that we support embedded Schemes, which often run on devices with CPUs of less than 32 bits. Marc Feeley's group, I believe, has such an implementation. Should they not be considered Scheme just because they run on such CPUs and don't support bignums?

comment:2 Changed 6 years ago by cowan

See FixnumInfo for information on 39 Schemes.

comment:3 Changed 5 years ago by cowan

  • Status changed from new to decided

This proposal was rejected by the WG. #359, which is not yet decided, attempts to accomplish the same result in a different way.

comment:4 Changed 5 years ago by cowan

  • Resolution set to wontfix
  • Status changed from decided to closed
Note: See TracTickets for help on using tickets.