initial impressions/questions Matthew Flatt (21 Dec 2002 13:03 UTC)
Re: initial impressions/questions Marc Feeley (22 Dec 2002 02:09 UTC)
Re: initial impressions/questions Matthew Flatt (22 Dec 2002 06:10 UTC)
Re: initial impressions/questions Marc Feeley (23 Dec 2002 03:28 UTC)
Re: initial impressions/questions Matthew Flatt (23 Dec 2002 18:35 UTC)
Re: initial impressions/questions Marc Feeley (23 Dec 2002 19:12 UTC)

Re: initial impressions/questions Matthew Flatt 23 Dec 2002 18:34 UTC

At Sun, 22 Dec 2002 22:27:45 -0500, Marc Feeley wrote:
> > I find this line of reasoning so compelling that I now advocate the
> > elimination of `make-mutable-parameter'.
>
> You mean: parameters should be mutable according to the specified
> semantics and "make-parameter" should create mutable parameter
> objects, consequently "make-mutable-parameter" can be removed.

No, I meant simply that `make-mutable-parameter' should be removed,
with `make-parameter' left alone.

So there would be no mutable parameters, because programmers can easily
get them through mutable objects that are stored as parameter values.

> > FWIW, I found your arguments in favor of `make-mutable-parameter'
> > uncompelling: no particular use for it, but seems on the surface to be
> > easier to implement, etc. These sort of arguments seem suspiciously
> > like the ones that support dynamic scope over lexical scope.
>
> No the "efficiency of implementation" (of thread creation and
> continuation transfer) is only a secondary reason.  The primary reason
> is that the semantics of parameter objects is closer to lexical
> variables (the only difference is dynamic vs. lexical scope).  This
> makes them easier to understand.

These are still unsatisfyingly abstract answers to me. I really want to
see how one choice or the other makes programming easier, and I guess
I'll have to keep looking for examples. Meanwhile, if mutable
parameters must stay, I yield.

Matthew