[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Lua 5.3 changes to .__eq
- From: Roberto Ierusalimschy <roberto@...>
- Date: Sun, 12 Jul 2015 12:35:31 -0300
> The reason the difference matters to me is that someone who writes a random or
> otherwise noncommutative method is (definitely) doing it to themselves. But at
> least in previous versions of Lua, the language required basic safeguards by
> requiring that both operands "share the same metamethod".
I think you can say the same now: someone who writes an A.__eq that
says it is equal to B, when B disagrees about that, "is doint it to
themselves". Your objects should only say they are equal to objects
they know about (but, as Dirk pointed out, may need a different method).