This fixes a bug in Rubinius implementation of Math::gamma for integral arguments in range 24..171 and improves Math::gamma specs.
Remove false comment and test wider range of integers: it reveals a b…
…ug in Rubinius implementation of Math::gamma.
Use the FactorialTable only for suitable values.
Clean up whitespace.
Remove cases guarded by incorrect Ruby versions and doubled guards: M…
…ath::gamma is only in 1.9 and up and the cases are already enclosed in this guard.
Compare to Float::INFINITY instead of using 'infinite?' method to bet…
…ter match labels of the cases.
Add a test for gamma(-0).
This pull request fails (merged 724f16d into c4fe2ec).
Please wait with the pull, I'll fix the errors reported by travisbot.
Conform to ISO C99 tgamma specification and return -infinity for Math…
Fix tests: for n in 2..23 should the gamma(n) give exact results, for…
… n in 24..30 the tolerance must be much bigger.
This pull request fails (merged 2d5a833 into c4fe2ec).
Revert 1c1b7a3, negative and positive zeros are equal.
Add tag for failing gamma test case.
Fix failing test cases - use variables in proper scope. Rename variab…
…les for clarity.
This pull request passes (merged e2ca816 into c4fe2ec).
Return -infinity for Math::gamma(n) in case of n being negative zero.…
… That's what ISO C99 tgamma does.
This pull request passes (merged 8bade74 into c4fe2ec).
Remove tag for passing spec.
This pull request passes (merged 013f7bd into c4fe2ec).
I think I'm done. :)
Besides the original issue, I've included the fix and test case for Math::gamma(-0.0) == -Float::INFINITY, thanks brixen for the tip how to do it neatly.
Math::gamma(-0.0) == -Float::INFINITY