Opened 7 years ago

Closed 5 years ago

#52 closed defect (fixed)

read/write cyclic data

Reported by: alexshinn Owned by: alexshinn
Priority: major Milestone:
Component: WG1 - I/O Keywords:
Cc:

Description

SRFI-38 standardizes the #0=(1 . #0#) shared
structure notation for read/write. In the case
of write, this can be expensive to compute, but
otherwise the common case of the repl printing
a cyclic structure results in an infinite loop.

Do we want to add support for this, as an option
or separate set of procedures?

Change History (9)

comment:1 Changed 7 years ago by arcfide

Since we have to deal with the REPL, I'm inclined to include this, but I'm not sure whether this is something that should be added. I don't know about the various arguments for an against. I know that it is commonly implemented on the Scheme systems that I use. In Chez Scheme, when trying to write a cyclic structure, the PRINT-GRAPH parameter is automatically set to #t for the duration of that operation. In general, with these sorts of things, I'm in favor of controlling them via parameters, so a PRINT-GRAPH parameter makes sense to me here if we do standardize this feature, to enable to disable it.

comment:2 Changed 7 years ago by cowan

  • Resolution set to fixed
  • Status changed from new to closed

The WG has voted to accept SRFI-38 as part of the core.

comment:3 Changed 7 years ago by cowan

  • Resolution fixed deleted
  • Status changed from closed to reopened

To be revoted because there was no simple majority.

comment:4 Changed 7 years ago by alexshinn

  • Resolution set to fixed
  • Status changed from reopened to closed

The native read/write will support the SRFI-38 notation natively.

comment:5 Changed 6 years ago by alexshinn

  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:6 Changed 6 years ago by alexshinn

  • Owner alexshinn deleted
  • Status changed from reopened to assigned

comment:7 Changed 6 years ago by alexshinn

  • Status changed from assigned to decided

comment:8 Changed 6 years ago by alexshinn

  • Owner set to alexshinn
  • Status changed from decided to writing

comment:9 Changed 5 years ago by cowan

  • Resolution set to fixed
  • Status changed from writing to closed

SRFI 38 notation is accepted on input; on output, there are now various procedures to control how (and if) it's generated.

Note: See TracTickets for help on using tickets.