Re: [Scheme-reports] Fwd: R7RS John Cowan (04 May 2013 19:17 UTC)
Re: [Scheme-reports] Fwd: R7RS Vassil Nikolov (04 May 2013 20:20 UTC)
Re: [Scheme-reports] Fwd: R7RS John Cowan (04 May 2013 20:38 UTC)
Re: [Scheme-reports] Fwd: R7RS Vassil Nikolov (04 May 2013 20:52 UTC)

Re: [Scheme-reports] Fwd: R7RS John Cowan 04 May 2013 19:16 UTC

John Boyle scripsit:

> Might this be an acceptable hack?

It might, but I'd rather fix the problem and restore continuity with the
Scheme past.  If this be "leaving Scheme stuck in the 80s", then so be it.

> Well.  First, I would argue (as others have) that one can make exactly
> the same argument about *any* data structure.  Replace "make-closure"
> with "cons", "vector", "string-append", "reverse", or many other things.
> It is quite true that if you didn't have to maintain object identity for
> X other data structure, then you could make this splitting optimization
> and your code would run faster.  One might argue that closures are
> special in one way or another, but I would be unimpressed.

Indeed, the context of the R6RS discussion of May 2007 shows that the real
topic of discussion was identity vs. immutability: must immutable values
have object identity?  Immutable lists, strings, and vectors coexist with
their mutable relatives as part of the same type, as a result of the
rule that constants are immutable (which dates back to R4RS at least).
However, records are mutable or immutable depending on whether they have mutable
fields; no record type has both mutable and immutable instances.

So most of the discussion was about immutable records and whether they
can be freely copied, especially the case of a record with no fields:
is it a null object (and potentially a singleton) or is it usable as
a source of identity?  In the end, the latter was accepted: all R6RS
records whether mutable or immutable have a location and identity.

What wasn't really considered is that (like records) procedures can be
mutable or immutable depending on whether their closed-over variables
are, but that (like pairs, etc.) this is not a distinction of type.
The strong resemblance between procedures and other containers was
essentially ignored.

--
John Cowan    cowan@ccil.org    http://ccil.org/~cowan
If a traveler were informed that such a man [as Lord John Russell] was
leader of the House of Commons, he may well begin to comprehend how the
Egyptians worshiped an insect.  --Benjamin Disraeli

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports