[racket-dev] else clauses: possible change to match?

From: Laurent (laurent.orseau at gmail.com)
Date: Sat May 4 11:14:04 EDT 2013

Matthew,
Out of curiosity, could you explain why you'd prefer #:else everywhere
instead of [else ...] ?
Would such an #:else allow for multi-line bodies?


On Sat, May 4, 2013 at 5:06 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:

> At Sat, 4 May 2013 09:15:22 -0500, Robby Findler wrote:
> > On Sat, May 4, 2013 at 9:07 AM, Matthew Flatt <mflatt at cs.utah.edu>
> wrote:
> >
> > > At Fri, 3 May 2013 17:29:52 -0400, Eli Barzilay wrote:
> > > > A few minutes ago, Robby Findler wrote:
> > > > >
> > > > > FWIW, this was the bug in redex that prompted me to send this
> > > > > message (it was there for some time since it wasn't a syntax error
> > > > > .... it was similar in spirit to the code I posted; things broke
> > > > > when #f was an argument)
> > > >
> > > > [I think that it's good to have a much more relaxed policy about
> > > > breaking compatibility in cases like this: so far there was no real
> > > > code found that uses the feature, but there is one instance of code
> > > > that would get fixed by the change...]
> > >
> > > Well, Ian provided an example from real code, right? Ian is willing to
> > > change his code, but the code sounds real.
> > >
> > > There's also the use in `unparse-pattern' in Redex. Maybe that's the
> > > troublesome one that Robby has in mind changing (or he would be happy
> > > to change it, obviously), but it's another real example.
> > >
> > >
> > No, that was not the example. The code I sent at the beginning of the
> > thread was an adjusted version of the bug that hid in Redex for, roughly,
> > months. It was a real bug and caused real problems and we knew something
> > was wrong but didn't find it for some time.
> >
> > In other words, this isn't some made-up, code cleanliness-based request.
>
> Yes, I understand that you faced a real bug. I hedged above on
> `unparse-pattern' not to suggest that your actual bug was
> uninteresting, but to suggest that I might misunderstand the
> relationship between the bug and the current state of our repository.
>
> All else being equal, I'm definitely in favor of a change to a sensible
> `else' for `match'. The "else" that isn't equal, however, is backward
> compatibility, and I think we're at the right point in our development
> cycle to defer backward incompatibilities to the next language ---
> hence my vote to defer.
>
> _________________________
>   Racket Developers list:
>   http://lists.racket-lang.org/dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20130504/8e7d125f/attachment.html>

Posted on the dev mailing list.