[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: __bshr vs __bshl
- From: Reinder Feenstra <reinderfeenstra@...>
- Date: Sat, 7 Apr 2018 20:58:59 +0200
Hi All,
While implementing all meta methods in some glue code between Lua and
C++ I'd became curious why __bshr and __bshl both exist. For the
compare operators a smart trick is used so you don't need to implement
them all.
To make sure my glue code behaves the same as Lua I simply tried all
operators, e.g.
Lua 5.3.3 Copyright (C) 1994-2016 Lua.org, PUC-Rio
> print(2 << -1)
1
> print(2 >> 1)
1
This is legal in Lua, so why not only a __bshr meta method and call
this with a negative shift count for the << operator?
Just curiosity, no complain ;) I really like Lua and its easiness to
embed. (I also experimented with python and v8)
Best regards,
Reinder