I program in Java because it is cross-platform (for example, use Processing) and it does not have much
compilation problems (in C++, you need to take care of order when including headers).
Some libraries I use:
import org.apfloat.Apfloat;
import org.apfloat.ApfloatMath;
void init()
{
Apfloat x = new Apfloat(2, 1000);
System.out.println(ApfloatMath.sqrt(x));
}
void setup()
{
init();
}