To allow the answer to change without affecting the behaviour of
programs.
func outer() func(int)int { return func(x int) { return x + 1 } }
... outer() == outer()
true or false?
func alpha(int x) int { return x + 1 }
func beta(int x) int { return x + 1 }
... alpha == beta
true or false?
If the program is sensitive to the result, people will depend on it
(even if the documentation contains pictures of large red dragons
saying DO NOT DO) and that handicaps the performance-hungry
compiler writer.
Chris
--
Chris "allusive" Dollin