A Python package for aliased function dispatching to multiple array libraries
Project description
arraylias
This repo is still in the early stages of development, there will be breaking API changes
Arraylias is an open-source Python library providing single-dispatching tools centred around the construction of an aliased module. Aliased modules are built by initially registering "libraries" consisting of a collection of types, then registering different versions of a given function in the aliased module for each underlying type library. When using the aliased module, function calls are automatically dispatched to version of the function for the correct library based on the type of the first argument.
Arraylias contains default pre-built aliased versions of both NumPy and Scipy, with additional registration of the JAX and Tensorflow array libraries. This enables writing NumPy and Scipy like code that will execute on NumPy, JAX, and Tensorflow array objects as if it had been written in the respective native libraries. If necessary, these default aliases can be further extended to fit the needs of the application.
Reference documentation may be found here, including tutorials, user guide, and API reference.
Installation
Arraylias is installed by using pip
:
pip install arraylias
Contribution Guidelines
If you'd like to contribute to Arraylias, please take a look at our contribution guidelines. This project adheres to Qiskit's code of conduct. By participating, you are expected to uphold this code.
We use GitHub issues for tracking requests and bugs. For questions that are more suited for a forum we use the Qiskit tag in the Stack Exchange.
Authors and Citation
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file arraylias-0.1.1.tar.gz
.
File metadata
- Download URL: arraylias-0.1.1.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80678a00a6a716e63379efdad54b9ea6454885021189d6241facd7f3991d5200 |
|
MD5 | 9d82a4de1f4504c61d419b9238cd0943 |
|
BLAKE2b-256 | f57e2b6290e0e191770cdaf225d326c12b677f0e287b07371e3c5b59cf4e2b35 |
File details
Details for the file arraylias-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: arraylias-0.1.1-py3-none-any.whl
- Upload date:
- Size: 21.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 890ef262cd65e03dbca3bd655dac8236f40613ead7b5b4be7f519015142f8482 |
|
MD5 | b3a27f1e5c4ef341357b0a0865edbe7e |
|
BLAKE2b-256 | 5baf8e0078fb351a37726665753fe23523cf07ec6a14520380cee73259cae3a4 |