Skip to main content

UiuaPy

A bridge between Uiua and NumPy - enabling you to do tacit array processing in Python.

Installation

pip install uiuapy

If building the source distribution, rather than installing a precompiled wheel, you will need to have rustup installed on your machine.

Usage

import uiua

print(uiua.compile('/+')([1, 2, 3]))
# 6.0

print(uiua.compile('⌕')('ab', 'abracabra')) 
# [1 0 0 0 0 1 0 0 0]

Flags

You can allow thread spawning either specific to a program, or specific to an invocation. Invocation flags take precedence over program flags.

import numpy as np
import uiua

xs = np.linspace(0, 1, 10_000)

print(uiua.compile('/+', allow_threads=True)(xs))
# 50000.0

print(uiua.compile('/+')(xs, allow_threads=True))
# 50000.0

NumPy integration

UiuaPy uses the NumPy C-API for taking in Python inputs and returning Python results.

Uiua supports 5 data-types for arrays/scalars:

Uiua type NumPy equivalent dtype
Num float64
Byte uint8
Complex complex128
Char Unicode (32-bit characters)
Box object

If you pass in a NumPy array that does not have one of the above dtypes, it will be automatically converted according to the table below:

NumPy dtype Converted NumPy dtype Uiua type
float32 float64 Num
uint64 float64 Num
uint32 float64 Num
uint16 float64 Num
int64 float64 Num
int32 float64 Num
int16 float64 Num
bool uint8 Byte

Interfacing overhead

Passing a numpy array to uiua requires copying its memory (using memcpy/ std::ptr::copy_nonoverlapping in Rust). The same is true for the values returned from the Uiua computation.

If using anything other than float64, uint8, complex128 or unicode data - there are also type conversion costs to take into account.

Development

Dependencies

# Format code
uv run ruff format
cargo fmt

# Fix/report lints
uv run ruff check --fix
cargo clippy

# Run tests
uv run pytest

# Build wheels
uv build

Metadata

Release files for uiuapy 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uiuapy 0.2.0
File Size Uploaded
uiuapy-0.2.0.tar.gz 36.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for uiuapy 0.2.0
File
uiuapy-0.2.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
uiuapy-0.2.0-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
uiuapy-0.2.0-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
uiuapy-0.2.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
uiuapy-0.2.0-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
uiuapy-0.2.0-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
uiuapy-0.2.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
uiuapy-0.2.0-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
uiuapy-0.2.0-cp311-cp311-macosx_11_0_universal2.whl CPython 3.11 CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) Details
uiuapy-0.2.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
uiuapy-0.2.0-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
uiuapy-0.2.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
uiuapy-0.2.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
uiuapy-0.2.0-cp39-cp39-manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64 Details
uiuapy-0.2.0-cp39-cp39-macosx_11_0_universal2.whl CPython 3.9 CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 145.5 MB

Release files / uiuapy-0.2.0.tar.gz

Download URL uiuapy-0.2.0.tar.gz
Size 36.9 kB
Tags Source
SHA-256 checksum
How to use checksums
bc1f8b4397b00dfdca529bce4339c7e2a8bdf9bc7c7a0edd6a664b83b5de5c50
BLAKE2b-256 checksum
How to use checksums
e2054c522004df83b988555928d976f8945d223a39704b51f98abf4a46558562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp313-cp313-win_amd64.whl

Download URL uiuapy-0.2.0-cp313-cp313-win_amd64.whl
Size 9.5 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
6ac840afbd8ddf45acb43c6b59d06ee4feeed1b1d1b455d1c89cae48e75cc314
BLAKE2b-256 checksum
How to use checksums
7c24e9cd7e6a8a184f3af421c74b25f04b226828f48ff911f89aa873f225ef3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL uiuapy-0.2.0-cp313-cp313-manylinux_2_28_x86_64.whl
Size 10.5 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8ed6f1b0af7d545e44a0c4a8edf0c945c604d55a78a5c42c421622f44a7a0716
BLAKE2b-256 checksum
How to use checksums
2bda07e5d9cbc6b8c612f207f14c1f295387d4cddaf44abe6b56a3f5ba677163
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp313-cp313-macosx_15_0_arm64.whl

Download URL uiuapy-0.2.0-cp313-cp313-macosx_15_0_arm64.whl
Size 9.1 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
97766f4c087a3bdad07280d7778c9604800eac9a80aaed8973ce03a09b6f0dc7
BLAKE2b-256 checksum
How to use checksums
b3a5d6870ff431c32ebfb211165d1f6dfca918bc271785885b91452f44541ab0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp312-cp312-win_amd64.whl

Download URL uiuapy-0.2.0-cp312-cp312-win_amd64.whl
Size 9.5 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
c80cdfee7736315f9f1ece23088fdec24b92520c417e98077492c22c71bf20bb
BLAKE2b-256 checksum
How to use checksums
da3946e55e1009f83230563abacc3c3e47d2d8581378763b9ad3866b25c76291
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL uiuapy-0.2.0-cp312-cp312-manylinux_2_28_x86_64.whl
Size 10.5 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
24cea6d98d1957305e815a9ddeab77e287fb4af58a8d3ca3ffe55be90495cf91
BLAKE2b-256 checksum
How to use checksums
9e57792e22cfbc8ebae4c4fa10d3256c286ec716703f379a443f86289bd480dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp312-cp312-macosx_15_0_arm64.whl

Download URL uiuapy-0.2.0-cp312-cp312-macosx_15_0_arm64.whl
Size 9.1 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
8dfe8b2b54aa25924db2fea94bdb152638ad89834153b207c836f11eb8dfd317
BLAKE2b-256 checksum
How to use checksums
8f8e89d66d1fc20266281e9a8172d63a015d7fbb22088a8dd15100f8a1090a13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp311-cp311-win_amd64.whl

Download URL uiuapy-0.2.0-cp311-cp311-win_amd64.whl
Size 9.5 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
f024a05ffe3621ef70a4dde887a5e5349566ffb9988ca433dcb750a2c2ed19d0
BLAKE2b-256 checksum
How to use checksums
ce8ecb1f8411f5dbb479b0dbca5de4360b213f5b7a398140e73449f76591f831
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL uiuapy-0.2.0-cp311-cp311-manylinux_2_28_x86_64.whl
Size 10.5 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8df8b46e3db514cec6238915f1f96761268ad83c49409482f8e768bcb59ec5f1
BLAKE2b-256 checksum
How to use checksums
7eecb7ddc2fedf3318f40fafce2ad99c83903b65149edf63c61e5ae9ca1ec042
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp311-cp311-macosx_11_0_universal2.whl

Download URL uiuapy-0.2.0-cp311-cp311-macosx_11_0_universal2.whl
Size 9.1 MB
Tags CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
3d9f8be72de33f3ec10015a75ffb87debdd1683c0cfc26b7f169a9d130110f5c
BLAKE2b-256 checksum
How to use checksums
d1afdbd1b0f92d2d5bd8a102e740f7f73c7787de28fe844cb51efe445f844eed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp310-cp310-win_amd64.whl

Download URL uiuapy-0.2.0-cp310-cp310-win_amd64.whl
Size 9.5 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
fbbe146cc8d82b2c9178691988760e5bd3a6dd85379e9c30af7a45e841f9057f
BLAKE2b-256 checksum
How to use checksums
7f45fe1e54cb9ad9ecd464603edfe06b410a4c69de4336a72b8a03cd24aafac7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL uiuapy-0.2.0-cp310-cp310-manylinux_2_28_x86_64.whl
Size 10.5 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5cf8ff5ab42857109b297b338328254c909ace874481239c789c6a5c7e8d9f23
BLAKE2b-256 checksum
How to use checksums
87cdbed75b3bcb930ffe1f94bc57af0c35007e8964d57abe8bf0e7b68d0a0a3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL uiuapy-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
Size 9.1 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7f9915023206212b34aa02a7b0f6a04fde32dbe3b16addd4d3e5d9787b1f5e65
BLAKE2b-256 checksum
How to use checksums
cad09bd9f3c4c209c5b1b7723b7bae9b05caef5fc4f9759e5613802224ddeded
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp39-cp39-win_amd64.whl

Download URL uiuapy-0.2.0-cp39-cp39-win_amd64.whl
Size 9.5 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
e58b149660c639fb4a2e38ae9d16458f56e9a69a02cbe03480abc4cf7c278c24
BLAKE2b-256 checksum
How to use checksums
8f81832dc8bf66818c0e5df9347558e6cd5875b02876cafedb7ab8a54adf3437
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp39-cp39-manylinux_2_28_x86_64.whl

Download URL uiuapy-0.2.0-cp39-cp39-manylinux_2_28_x86_64.whl
Size 10.5 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
08059b56bd87a833ed8a233ea82dd3df62baadc21c79730e09912190eb4fc4e3
BLAKE2b-256 checksum
How to use checksums
69a903e6812e50a9513a55db59d536e87ad84f477df7a92a36798169dd511d62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release files / uiuapy-0.2.0-cp39-cp39-macosx_11_0_universal2.whl

Download URL uiuapy-0.2.0-cp39-cp39-macosx_11_0_universal2.whl
Size 9.1 MB
Tags CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
cf1578d95a5c87b672b3913438658ef88d229decd9cfee4c14cc598c4c96e997
BLAKE2b-256 checksum
How to use checksums
f7b01ff0db56b03bd504a5c4870629144170b07196650c1e50cdabf6c63fda32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

16 release files

0.1.0

16 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page