Re: [Scheme-reports] "unspecified values" Jim Rees (19 May 2011 18:51 UTC)
Re: [Scheme-reports] "unspecified values" Emmanuel Medernach (19 May 2011 19:50 UTC)
Re: [Scheme-reports] "unspecified values" Per Bothner (20 May 2011 07:42 UTC)
Re: [Scheme-reports] "unspecified values" John Cowan (20 May 2011 14:32 UTC)
Re: [Scheme-reports] "unspecified values" Andy Wingo (20 May 2011 15:19 UTC)
Re: [Scheme-reports] "unspecified values" John Cowan (20 May 2011 15:48 UTC)
Re: [Scheme-reports] "unspecified values" Andy Wingo (20 May 2011 16:02 UTC)
Re: [Scheme-reports] "unspecified values" Per Bothner (20 May 2011 16:02 UTC)
Re: [Scheme-reports] "unspecified values" Aaron W. Hsu (20 May 2011 16:35 UTC)
Re: [Scheme-reports] "unspecified values" Alex Shinn (20 May 2011 16:56 UTC)
Re: [Scheme-reports] "unspecified values" Jim Rees (20 May 2011 17:02 UTC)
Re: [Scheme-reports] "unspecified values" Andre van Tonder (20 May 2011 17:20 UTC)
Re: [Scheme-reports] "unspecified values" John Cowan (20 May 2011 20:03 UTC)
Re: [Scheme-reports] "unspecified values" Alaric Snell-Pym (23 May 2011 10:49 UTC)
Re: [Scheme-reports] "unspecified values" John Cowan (23 May 2011 15:50 UTC)
Re: [Scheme-reports] "unspecified values" Aaron W. Hsu (23 May 2011 22:50 UTC)
Re: [Scheme-reports] "unspecified values" Alaric Snell-Pym (23 May 2011 10:05 UTC)
Re: [Scheme-reports] "unspecified values" Andy Wingo (19 May 2011 21:42 UTC)

Re: [Scheme-reports] "unspecified values" Andy Wingo 20 May 2011 16:00 UTC

On Fri 20 May 2011 17:46, John Cowan <cowan@mercury.ccil.org> writes:

> Andy Wingo scripsit:
>
>> I think that Per is saying that if `set!' returns no values, then
>> there is nothing for P to ignore.
>
> Sure.  But "making the REPL nicer" is not an argument in favor of set!
> returning no values, as the REPL can be just as nice when set! returns a
> (distinguished) value.

I don't know why you insist on this being a *good* strategy, besides
being an allowable one.

For example with this repl:

  (define (repl read eval print)
    (let loop ()
      (call-with-values (lambda () (eval (read)))
        (lambda vals
          (for-each print vals)
          (loop)))))

What does it mean to return three distinguished unspecified values?
Surely it's different than returning one.  Yet the user won't know in
such a system.  (Incidentally Guile is such a system.)

Andy
--
http://wingolog.org/

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