[Accepted with Modifications] SE-0246: Generic Math Functions

For free functions, there are no mutating variants, so this isn't an issue. For the implementation hooks (statics), there is again no way to have a mutating version. I.e., these new operations appear either as sqrt(x) or Float.sqrt(x). There's no way either of those can be mutating, so no confusion is possible.

Even the existing method x.formSquareRoot( ) was probably ill-considered because it doesn't offer any efficiency wins, but everyone was quite gung-ho about testing out the edges of the naming conventions at that point. It's a vestigial curiosity now that we might deprecate at some future point.

1 Like