Double, Float の Fractional インスタンス定義において、 (**) や tan などは、デフォルト定義にまかせている。
そのせいで、計算精度が落ちており、GHC での実行結果とずれてしまっている。 (sample288, 289)
デフォルト定義は Haskell 2010 によるものなので、 規格準拠という意味ではこれも許容されるかと思うが、 実装の「仕様」としてこれで確定するのは難がありそうなので、 公開までに改善したい。
(**) , tan , tanh を Java 側でネイティブに処理するようにした。それによって、いくつかの誤差は解消したが、いくつか残ってしまった。 (test/expected/にある sample288.txt と sample288.txt.org の違い、299 も同様を参照)
cosh , asinh など、Math 関数を呼び出しているだけなので、 GHC の用いているライブラリと Java のライブラリの差に見える(が、詳細未調査)。
あまりこだわっても仕方がない気がするので、保留とする。