I'm a little confused on why pow behaves so differently when 
switching from an int to a uint for the exponent.
import std.math : pow;
import std.stdio : writeln;
void main()
{
	float x = 2;
	int y1 = 1;
	uint y2 = 1;
	writeln(pow(x, -y1));  //prints 0.5
	writeln(pow(x, -y2));  //prints inf
}