Ticket #32 (writing defect)
user-defined types
| Reported by: | alexshinn | Owned by: | alexshinn |
|---|---|---|---|
| Priority: | major | Milestone: | |
| Component: | WG1 - Core | Keywords: | |
| Cc: |
Description (last modified by alexshinn) (diff)
Do we support any means of creating disjoint user-defined types, such
as in SRFI-9, SRFI-99 or the R6RS record system?
Change History
comment:2 Changed 2 years ago by kumoyuki
Yes. Disjoint programmer types are a must. Ideally, the whole type model should be seamless from the set membership predicates through to an effective type algebra. It would be nice to reify some form of type tags/descriptors across all types, as well as a limited pattern matching.
comment:3 Changed 19 months ago by cowan
- Status changed from new to closed
- Resolution set to fixed
The WG voted to adopt SRFI-9 as part of the core.
comment:4 Changed 19 months ago by cowan
- Status changed from closed to reopened
- Resolution fixed deleted
comment:5 Changed 18 months ago by alexshinn
- Summary changed from user-define types to user-defined types
comment:7 Changed 18 months ago by cowan
- Description modified (diff)
- Summary changed from user-defined types to user-defined types (syntactic)
comment:9 Changed 18 months ago by alexshinn
- Description modified (diff)
- Summary changed from user-defined types (syntactic) to user-defined types
reverting procedural/syntactic split
comment:10 Changed 16 months ago by cowan
WG1 voted to accept SRFI 9.
comment:11 Changed 16 months ago by cowan
- Status changed from reopened to closed
- Resolution set to fixed
comment:12 Changed 16 months ago by alexshinn
- Status changed from closed to reopened
- Resolution fixed deleted
comment:13 Changed 16 months ago by alexshinn
- Owner alexshinn deleted
- Status changed from reopened to assigned
comment:15 Changed 15 months ago by alexshinn
- Owner set to alexshinn
- Status changed from decided to writing
Note: See
TracTickets for help on using
tickets.

I support providing the syntactic portion of SRFI 99 only. This is a very new SRFI, but it is completely backward compatible with SRFI 9, which is the most popular of all SRFIs (according to the documentation, only Chez among the major implementations does not support it). The extensions include single inheritance and (optional) implicit naming, along with succinct abbreviations for specifying whether a field is immutable or mutable.
I do not support, I reject, I am altogether against the standardization of R6RS records by WG1. (Or WG2, for that matter.) R6RS argues that compilers can make them more efficient than SRFI-9-style records, but SRFI 99 refutes this position.