You're all right, we have to think about what equality means here.

The most sensible thing would be:

  1)
  7 == (_plus 6 1) is equal 

the same way
  2)

  let f = __trace "foo" (_plus 6 1)
  in f == f
is without printing "foo"..

So if the terms are the same we don't have to evaluate them. But if they
are not we have to evaluate them to make a final decision because the 7
= 6+1 example should hold.

Marc Weber
_______________________________________________
nix-dev mailing list
[email protected]
https://mail.cs.uu.nl/mailman/listinfo/nix-dev

Reply via email to