On Sat, Feb 05, 2005 at 12:38:57PM +0000, Nicholas Clark wrote:
> Surely you can do better than that for counterintuitive? :-)
> 
> 4 < (0 | 6) < 2

    pugs> ? 4 < (0 | 6) < 2
    (#t|#f)

Why is it so?  Because:

    4 < (0 | 6)     and (0 | 6) < 2
    (4 < 0 | 4 < 6) and (0 | 6) < 2     # local autothreading
    (#f | #t)       and (0 | 6) < 2     # evaluation
    #t              and (0 | 6) < 2     # reduction in boolean context(!)
    (0 | 6) < 2                         # short circuitry
    (0 < 2 | 6 < 2)                     # local autothreading
    (#t | #f)                           # evaluation

Sick, eh?

Thanks,
/Autrijus/

Attachment: pgpcWDsiCDerP.pgp
Description: PGP signature

Reply via email to