|
14 | 14 |
|
15 | 15 | ## Stakeholders
|
16 | 16 |
|
17 |
| - |
| 17 | +Arrays are fundamental to scientific computing, data science, and machine |
| 18 | +learning and deep learning. Hence there are many stakeholders for an array API |
| 19 | +standard. The _direct_ stakeholders of this standard are **authors/maintainers of |
| 20 | +Python array libraries**. There are many more types of _indirect_ stakeholders |
| 21 | +though, including: |
| 22 | + |
| 23 | +- maintainers of libraries and other programs which depend on array libraries |
| 24 | + (called "array-consuming libraries" in the rest of this document) |
| 25 | +- authors of non-Python array libraries |
| 26 | +- developers of compilers and runtimes with array-specific functionality |
| 27 | +- end users |
| 28 | + |
| 29 | +Libraries that are being actively considered - in terms of current behaviour and |
| 30 | +API surface - during the creation of the first version of this standard |
| 31 | +include: |
| 32 | + |
| 33 | +- [NumPy](https://numpy.org) |
| 34 | +- [TensorFlow](https://www.tensorflow.org/) |
| 35 | +- [PyTorch](https://pytorch.org/) |
| 36 | +- [MXNet](https://numpy.mxnet.io/) |
| 37 | +- [JAX](https://github.com/google/jax) |
| 38 | +- [Dask](https://dask.org/) |
| 39 | +- [CuPy](https://cupy.chainer.org/) |
| 40 | + |
| 41 | +Other Python array libraries that are currently under active development and |
| 42 | +could adopt this API standard include: |
| 43 | + |
| 44 | +- [xarray](https://xarray.pydata.org/) |
| 45 | +- [PyData/Sparse](https://sparse.pydata.org) |
| 46 | +- [Weld](https://github.com/weld-project/weld) |
| 47 | +- [Bohrium](https://bohrium.readthedocs.io/) |
| 48 | +- [Arkouda](https://github.com/mhmerrill/arkouda) |
| 49 | +- [Legate](https://research.nvidia.com/publication/2019-11_Legate-NumPy%3A-Accelerated) |
| 50 | + |
| 51 | +There are a huge amount of array-consuming libraries; some of the most |
| 52 | +prominent ones that are being taken into account - in terms of current array |
| 53 | +API usage or impact of design decisions on them - include (this list is likely |
| 54 | +to grow it over time): |
| 55 | + |
| 56 | +- [Pandas](https://pandas.pydata.org/) |
| 57 | +- [SciPy](https://github.com/scipy/scipy) |
| 58 | +- [scikit-learn](https://scikit-learn.org/) |
| 59 | +- [Matplotlib](https://matplotlib.org/) |
| 60 | +- [scikit-image](https://scikit-image.org/) |
| 61 | +- [NetworkX](https://networkx.github.io/) |
| 62 | + |
| 63 | +Array libraries in other languages, some of which may grow a Python API in the |
| 64 | +future or have taken inspiration from NumPy or other array libraries, include: |
| 65 | + |
| 66 | +- [Xtensor](https://xtensor.readthedocs.io) (C++, cross-language) |
| 67 | +- [XND](https://xnd.io/) (C, cross-language) |
| 68 | +- [stdlib](https://stdlib.io/) (JavaScript) |
| 69 | +- [rust-ndarray](https://github.com/rust-ndarray/ndarray) (Rust) |
| 70 | +- [rray](https://github.com/r-lib/rray) (R) |
| 71 | +- [ND4J](https://github.com/deeplearning4j/nd4j) (JVM) |
| 72 | +- [NumSharp](https://github.com/SciSharp/NumSharp) (C#) |
| 73 | + |
| 74 | +Compilers, runtimes, and dispatching layers for which this API standard may be |
| 75 | +relevant: |
| 76 | + |
| 77 | +- [Cython](https://cython.org/) |
| 78 | +- [Numba](http://numba.pydata.org/) |
| 79 | +- [Pythran](https://pythran.readthedocs.io/en/latest/) |
| 80 | +- [Transonic](https://transonic.readthedocs.io) |
| 81 | +- [ONNX](https://onnx.ai/) |
| 82 | +- [Apache TVM](https://tvm.apache.org/) |
| 83 | +- [MLIR](https://mlir.llvm.org/) |
| 84 | +- [TACO](https://github.com/tensor-compiler/taco) |
| 85 | +- [unumpy](https://github.com/Quansight-Labs/unumpy) |
| 86 | +- [einops](https://github.com/arogozhnikov/einops) |
| 87 | +- [Apache Arrow](https://arrow.apache.org/) |
18 | 88 |
|
19 | 89 |
|
20 | 90 | ## High-level API overview
|
@@ -80,4 +150,4 @@ a dimension whose size is one.
|
80 | 150 |
|
81 | 151 | The following referenced documents are indispensable for the application of this specification.
|
82 | 152 |
|
83 |
| -- __IEEE 754-2019: IEEE Standard for Floating-Point Arithmetic.__ Institute of Electrical and Electronic Engineers, New York (2019). |
| 153 | +- __IEEE 754-2019: IEEE Standard for Floating-Point Arithmetic.__ Institute of Electrical and Electronic Engineers, New York (2019). |
0 commit comments