[RFC]: move @stdlib/math/base/ops/*
packages to @stdlib/number/*
and @stdlib/complex/*
#2261
Open
3 tasks done
Labels
RFC
Request for comments. Feature requests and proposed changes.
Description
This RFC proposes moving packages found in
@stdlib/math/base/ops
to respective sub-namespaces in@stdlib/number/*
and@stdlib/complex/*
. For example,@stdlib/math/base/ops/add
=>@stdlib/number/float64/base/add
@stdlib/math/base/ops/addf
=>@stdlib/number/float32/base/add
Currently, we rely on prefixes and suffixes to distinguish packages in
ops
; however, this practice breaks down when wanting to add C variants for various integer dtypes. To keep things cleaner, this RFC advocates for migrating to dedicated dtype sub-namespaces for arithmetic, binary, and logical operations, where the latter were already planned for dtype sub-namespaces. Moving their arithmetic counterparts seems better for the sake of consistency than following themath/base/special
precedent which stems from C99 and is primarily oriented to floating-point numbers.Related Issues
@stdlib/complex
into sub-namespaces #2260Questions
No.
Other
Note that this RFC does not propose changing
math/base/special
. This applies only toops
which are more universal for each numeric dtype, and where we do actually want dedicated C interfaces for each dtype (e.g.,int8_t stdlib_int8_base_add( int8_t x, int8_t y )
).The migration path would be as follows:
@stdlib/math/base/ops
namespace.cc @Planeshifter
Checklist
RFC:
.The text was updated successfully, but these errors were encountered: