I was noticing that the exponentiation operator `^` in `math` is not compatible with floats so I thought about adding it as an alternative to `pow` for floats, and restricting the original generic `^` implementation to `SomeInteger`.
But then I noticed that there is an open pull request ([https://github.com/nim-lang/Nim/pull/4666](https://github.com/nim-lang/Nim/pull/4666)) suggesting to add `**` as exponentiation for floats. Is there any decision on which operator "should" be used for exponentiation? I have read that Haskell supports several different exponentiation operators (see [https://wiki.haskell.org/Power_function](https://wiki.haskell.org/Power_function)) - they basically implement different algorithms, such that you can pick the one matching the capabilities of any user defined type. My impression till now, though, is that Nim is a more "practical" language, and with my background from Python (and working in an applied field - machine learning) I think that It would make more sense to stick to one operator, and let user defined types implement this in the most fitting way. Or is it the plan to have several different exponentiation operator also for the Nim standard `math` library?