-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Description
Checklist
Please ensure the following tasks are completed before submitting a feature request.
- Read and understood the Code of Conduct.
- Searched for existing issues and pull requests.
- The issue name begins with
RFC:.
Description
Description of the feature request.
This RFC proposes to add support for computing a double word product of two unsigned 32-bit integers. Adding support would partially address lack of 64-bit integer support in JavaScript (ignoring BigInt), which is necessary for, e.g., 32-bit integer multiplication, the product of which may exceed the maximum safe integer when evaluated in double-precision floating-point format.
Package: @stdlib/math/base/special/uimuldw
Alias: uimuldw
The API would follow the convention set forth of providing an optional output argument:
/**
* @param {ArrayLikeObject} [out] - output array
* @param {uinteger32} a - first unsigned integer
* @param {uinteger32} b - second unsigned integer
* @returns {ArrayLikeObject} output array
*/
function uimuldw( [out,] a, b ) {
// Implementation...
}Related Issues
Does this feature request have any related issues?
No.
Questions
Any questions for reviewers?
No.
Other
Any other information relevant to this feature request? This may include screenshots, references, sample output, and/or implementation notes.
- reference C implementation via Hacker's Delight (originally from Knuth and based on Montgomery multiplication)
- Related SO issues [1, 2, 3]