Re: [Scheme-reports] REPL Helmut Eller (14 Nov 2012 08:51 UTC)
Re: [Scheme-reports] REPL Alex Shinn (14 Nov 2012 09:07 UTC)
Re: [Scheme-reports] REPL Helmut Eller (14 Nov 2012 09:13 UTC)
Re: [Scheme-reports] REPL Alex Shinn (14 Nov 2012 09:26 UTC)
Re: [Scheme-reports] REPL Helmut Eller (14 Nov 2012 10:22 UTC)
Re: [Scheme-reports] REPL Marc Feeley (14 Nov 2012 21:06 UTC)
Re: [Scheme-reports] REPL John Cowan (14 Nov 2012 21:26 UTC)
Re: [Scheme-reports] REPL Marc Feeley (14 Nov 2012 22:05 UTC)
Re: [Scheme-reports] REPL Alex Shinn (14 Nov 2012 23:46 UTC)
[Scheme-reports] equal? Alan Watson (15 Nov 2012 00:40 UTC)
Re: [Scheme-reports] equal? Jim Rees (15 Nov 2012 02:36 UTC)
Re: [Scheme-reports] equal? John Cowan (15 Nov 2012 16:26 UTC)
Re: [Scheme-reports] equal? Alan Watson (15 Nov 2012 16:35 UTC)
Re: equal? Arthur A. Gleckler (17 Nov 2012 20:32 UTC)
Re: [Scheme-reports] REPL John Cowan (15 Nov 2012 16:23 UTC)
Re: [Scheme-reports] REPL Aaron W. Hsu (15 Nov 2012 23:47 UTC)
Re: [Scheme-reports] REPL Shiro Kawai (16 Nov 2012 01:16 UTC)
Re: [Scheme-reports] REPL Per Bothner (14 Nov 2012 21:37 UTC)
Re: [Scheme-reports] REPL Marc Feeley (14 Nov 2012 21:49 UTC)
Re: [Scheme-reports] REPL Andy Wingo (04 Jan 2013 13:02 UTC)
Re: [Scheme-reports] REPL John Cowan (04 Jan 2013 15:42 UTC)
Re: [Scheme-reports] REPL Alaric Snell-Pym (04 Jan 2013 16:30 UTC)
Re: [Scheme-reports] REPL Helmut Eller (15 Nov 2012 07:44 UTC)
Re: [Scheme-reports] REPL John Cowan (15 Nov 2012 16:04 UTC)
Re: [Scheme-reports] REPL Per Bothner (15 Nov 2012 16:17 UTC)

Re: [Scheme-reports] REPL Alaric Snell-Pym 04 Jan 2013 16:30 UTC

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 01/04/2013 03:42 PM, John Cowan wrote:
> Andy Wingo quotavit:
>
>>     In retrospect, we can also see that some aspects of the initial
>>     design of Scheme were flat-out wrong ... [We] believe that Carl
>>     Hewitt was right: we would have been better off to have introduced
>>     cells as a separate, primitive kind of object, rather than allowing
>>     assignment to any and every λ-bound variable.
>
> I've made that point too, but it's also been pointed out (I forget
> by whom) that mutable variables, unlike cells, can't escape their
> context, and that this is often a Good Thing: the mutability stays
> chained to specific procedures.  Even if you are not willing to pay
> the implementation price for direct support of mutable variables, and
> always transform them into cells anyway, certain kinds of source-level
> correctness are easier to establish when you know which parts of the
> program are pure.
>

Hrm.

Given that you can make cells out of mutable variables (with closures),
but that cells can't let you recreate the effect of "(define set! ...)"
in a language where variables are immutable, I'd have thought that
explicit cells let the compiler establish more properties of programs
than mutable variables! With cells, you can still establish which parts
of the program are pure - the parts that don't refer to cell
access/mutation procedures.

ABS

- --
Alaric Snell-Pym
http://www.snell-pym.org.uk/alaric/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlDnA5EACgkQRgz/WHNxCGqbZACgggIQqf6HyHHhyfJ8yg9SdLd1
iDEAoIebYPCuRR40PXrvRTTu2mBsdRax
=iegq
-----END PGP SIGNATURE-----

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