With GCL:
(%i63) cos(1.0d97);
(%o63) 0.44800964805919
With Julia or Clozure CL:
julia> cos(1.0e97)
0.7496172085944125
$ wx86cl64
Welcome to Clozure Common Lisp Version 1.8-r15286M (WindowsX8664)!
? (cos 1.0d97)
0.7496172085944125D0
And bigfloats:
(%i60) cos(1.0b97), fpprec : 2000;
(%o60) -7.0797267715593222213703559504[1944 digits]888604264163488232493341331b-2
Let me guess that Clozure & Julia turn the calculation entirely over to the (Intel) microprocessor. What on earth does GCL do?
Is this a binary32 / binary64 confusion problem?
No, I'm not surprised that the Clozure & Julia values are likely completely wrong--it just makes me wonder what GCL is doing.
--bw