Exponentiation
Binary "**" is the exponentiation operator. It binds even more tightly than unary minus, so -2**4 is -(2**4) , not (-2)**4 . (This is implemented using C's pow(3) function, which actually works on doubles internally.)
Note that certain exponentiation expressions are ill-defined: these include 0**0 , 1**Inf , and Inf**0 . Do not expect any particular results from these special cases, the results are platform-dependent.