commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Qualtagh (JIRA)" <>
Subject [jira] [Created] (MATH-1271) Unsigned operations
Date Thu, 10 Sep 2015 05:11:45 GMT
Qualtagh created MATH-1271:

             Summary: Unsigned operations
                 Key: MATH-1271
             Project: Commons Math
          Issue Type: New Feature
    Affects Versions: 4.0
            Reporter: Qualtagh
            Priority: Trivial

Add unsigned operations to ArithmeticUtils: divideUnsigned and remainderUnsigned. They exist
in java.lang.Integer and java.lang.Long since Java 8. The inner implementation is based on
leveraging to long (for ints) and to BigInteger (for longs). Comments in code suggest using
tricks described in "Hacker's Delight" to stay with smaller type (int and long respectively).
Those tricks were implemented in this pull request:

I don't know if using an algorithm from "Hacker's Delight" is compatible with Apache license.
The code is faster than standard Java 8 implementation: 2 times for int and 8 times for long
(verified with simple small tests).

This message was sent by Atlassian JIRA

View raw message