<br><br>On Friday, May 3, 2013, Ryan Culpepper wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 05/03/2013 11:12 AM, Robby Findler wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Can you point to some examples?<br>
<br>
Note that you can still use else, as long as you don't refer to it as a<br>
variable.<br>
</blockquote>
<br>
Just to check: If match treats else specially, it should only accept it as the entire pattern. For example, the following should be an illegal use of else:<br>
<br>
(match x [(list 'if test then else) ___])<br>
<br>
Right?<br>
<br>
(BTW, I may have written exactly the code above. I need to check.)<br>
<br></blockquote><div><br></div><div>I would not midn if that bound 'else' as a variable.</div><div><br></div><div>The only change I'd request is that when 'else' is the entire pattern, since that's the situation that's confusing to people not language lawyers.</div>
<div><br></div><div>Robby</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Ryan<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Friday, May 3, 2013, J. Ian Johnson wrote:<br>
<br>
I've used else as a catch-all binding in match. Yes, it's not the<br>
best practice, but I think since I've done it, other people must<br>
have done it too. This could annoy them.<br>
-Ian<br>
----- Original Message -----<br>
From: "Robby Findler" <<a>robby@eecs.northwestern.edu</a> <javascript:;>><br>
To: "Sam Tobin-Hochstadt" <<a>samth@ccs.neu.edu</a> <javascript:;>><br>
Cc: <a>dev@racket-lang.org</a> <javascript:;><br>
Sent: Friday, May 3, 2013 11:04:27 AM GMT -05:00 US/Canada Eastern<br>
Subject: Re: [racket-dev] else clauses: possible change to match?<br>
<br>
<br>
Given that we don't yet even have a prototype of racket2, I'm going<br>
to guess that "near" isn't all that near. IMO, there are other big<br>
things that we should be focused on going first (notably the package<br>
system).<br>
<br>
<br>
Just to check again: Is no one concerned with the backwards<br>
incompatibility issue?<br>
<br>
<br>
<br>
Robby<br>
<br>
On Friday, May 3, 2013, Sam Tobin-Hochstadt wrote:<br>
<br>
<br>
Right, I agree with this. My question is basically: are we going to,<br>
in the reasonably near future, be encouraging people to program in a<br>
`#lang racket2` where `cond` works differently, in which case it<br>
doesn't seem worth it to change `match`. Otherwise, I'll do this now.<br>
<br>
Sam<br>
<br>
On Fri, May 3, 2013 at 10:42 AM, Robby Findler<br>
< <a>robby@eecs.northwestern.edu</a> <javascript:;> > wrote:<br>
> Cond's else cannot change. I agree that that's what I would<br>
change if I<br>
> could have it back to do it over, but we cannot.<br>
><br>
> That's the way to perhaps be thinking about racket2, tho.<br>
><br>
> Robby<br>
><br>
><br>
> On Friday, May 3, 2013, Sam Tobin-Hochstadt wrote:<br>
>><br>
>> On Fri, May 3, 2013 at 10:22 AM, Robby Findler<br>
>> < <a>robby@eecs.northwestern.edu</a> <javascript:;> > wrote:<br>
>> ><br>
>> > For this kind of thing, my preference would be to change match<br>
than to<br>
>> > issue<br>
>> > a warning. I don't like warnings that are basically admitting<br>
weaknesses<br>
>> > in<br>
>> > the language design.... Of course, changing a core thing like<br>
that may<br>
>> > be<br>
>> > more trouble than it is worth, due to backwards compatibility<br>
concerns,<br>
>> > which is why I think it is worth raising here to see what<br>
others think.<br>
>><br>
>> I'm happy to make this change to `match`, except that I've heard<br>
>> Matthew say that he would have used a keyword for `else` in<br>
`cond` if<br>
>> he had it to do over again, and I wouldn't want to change one<br>
way, and<br>
>> then change back.<br>
>><br>
>> Sam<br>
<br>
_________________________<br>
Racket Developers list:<br>
<a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/<u></u>dev</a><br>
<br>
<br>
<br>
_________________________<br>
Racket Developers list:<br>
<a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/<u></u>dev</a><br>
<br>
</blockquote>
<br>
</blockquote>