I admit sloppiness.
On Sep 16, 2011, at 12:49 PM, Shriram Krishnamurthi wrote: > In addition to what Jay said, when the datatype evolves, it's harder > for someone reading the code to tell whether the "else" was meant to > cover only one other case (and now there's two, and someone forgot to > update the function) or truly all the other cases. > > When you have crisp predicates, I see no excuse for using else -- it's > intellectually sloppy and causes both missed early-errors (as Jay > shows) and later pain. For really complex predicates, it makes sense: > > (cond > [(prime (foo (bar x))) ...] > [else ...]) > > offers many advantages over > > (cond > [(prime (foo (bar x))) ...] > [(not (prime (foo (bar x)))) ...]) > > Shriram > _________________________________________________ > For list-related administrative tasks: > http://lists.racket-lang.org/listinfo/dev _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev

