Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Lappy

Lappy is a fork of Sophia Lin’s lazyray that supports more operations beyond arithmetics.

In Lappy, everything computable is considered an array object (unlike numpy, it does not offer separate scalar types). An array object has six basic components: the shape, the dtype, the expression, the value, the formal argument list, and the environment (capture list). Scalars are special arrays with shape being an empty tuple. If the dtype is an integer type, there can be assumptions associated with the array elements represented by an integer set (for scalars) or map (for non-scalars).

Documentation

Please visit https://xiaoyu-wei.com/docs/lappy/ for the latest documentation.

Status

This is a list of things that can be achieved with lappy today:

  • ✅ Arithmetic and scalar mathematics (lifted scalar functions / universal functions)

  • ✅ Axis reordering / transpose

  • ✅ Reshaping

  • ✅ Broadcasting (semi-dynamic)

Scope

Roadmap

  • ✅ Scan and fold

  • ✅ Tensor contractions, like np.einsum (including dot products and matrix multiply)

  • ✅ Slicing (static and dynamic)

  • ✅ Fancy indexing (static and dynamic)

  • ✅ Integration with Numpy’s dispatch mechanism like __array__ and __array_ufunc__

  • ✅ Some linear algebra like svd, qr, lstsq

Anti-features

  • ❌ Another array IR like APL. lappy is not an IR and does not intend to be.

    It serves as a tool to build parametrized array expressions for lazy evaluation, and strives to provide numpy compatible APIs.


Lappy is licensed under the MIT license and free for commercial, academic, and private use.

Metadata

Release files for lappy 2020.4.dev1

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

Source distribution (sdist)

Source distribution for lappy 2020.4.dev1
File Size Uploaded Provenance
lappy-2020.4.dev1.tar.gz 45.4 kB Without provenance Details

Release files / lappy-2020.4.dev1.tar.gz

Download URL lappy-2020.4.dev1.tar.gz
Size 45.4 kB
Tags Source
SHA-256 checksum
How to use checksums
299e19802822b39612c3f31e8ff582613a6ad1a0aa0e886084cb418b9181b452
BLAKE2b-256 checksum
How to use checksums
d373b4e99dafc1ba2d06fcac084512bff5cc52802e27e18836d53d377410ee2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.7

Security for lappy 2020.4.dev1

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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