Re: [Scheme-reports] multiple values module
Eli Barzilay 20 May 2011 17:45 UTC
An hour and a half ago, John Cowan wrote:
> Eli Barzilay scripsit:
>
> > IMO implementations that do some half-baked reification of
> > multiple values as first-class values are broken. Things like
> > (list (values 1 2) 3) or (define x (values 1 2)) should throw an
> > error.
>
> Well, you can write a conformant implementation that does so.
And that's very unfortunate. Things like (list (values 1 2) 3) are
nonsensical when you talk about their *meaning*, because values are
not *specified* as things that are reified as first class values.
Either way (specifying such a reification or making it behave like
multiple values) is far better than the neither-here-nor-there mess.
> Or you can have one that does it CL-style.
Specifically for CL, the choice was for the latter, which is
completely different from:
> Or you can use a unique type, or even a non-unique type. [...]
> Chibi's use cases just aren't anything like Racket's.
How is Racket related to anything I've said?
IMO, the above examples are things that don't make sense, just like
(define (foo x)
;; this function always returns 3...?
(length (call-with-values (lambda () (list x 1 2)) list)))
not returning 3. In this implementation, (car (values)) becomes a
dangerous implementation-exposing value.
> Ultimately, if you want R6RS, you know where to find it.
Why the inferiority complex? Did I mention R6RS, or more generally
*any* standard?
This is the kind of childish reply that makes r7rs look like a
childish response to r6rs. Coming from the chairman of wg2 makes this
kind of response worse.
> Here's the total implementation: [...] Completely conformant.
And once you've fixated into that complex, you just continue with it
not looking left or right. Here's a list of words that were not used
in my post:
* R5RS
* R6RS
* R7RS
* R[0-9]*RS
* Standard
* Conform.*
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!
_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports