Intriguingly, Haskell has *three* exponentiation operators to ensure everything is type safe: https://stackoverflow.com/a/6400628/509706