Skip to main content

An embedded DSL for numerical computing

Project description

FPy

An embedded Python DSL for specifying and simulating numerical algorithms.

Important links:

Installation

FPy can be installed from PyPI with either uv or pip, or built from source for development. The following instructions assume a bash-like shell.

Installing from PyPI

Requirements:

  • Python 3.11 or later

To install the latest stable release of FPy, run:

uv pip install fpy2

or, with pip:

pip install fpy2

Installing from source

Requirements:

  • Python 3.11 or later
  • make

With uv (preferred)

uv is the recommended development workflow — it handles the virtual environment and dependency installation in a single step:

uv sync

This creates .venv/ and installs FPy in editable mode along with the dev dependency group. Activate the environment with

source .venv/bin/activate

or prefix individual commands with uv run (e.g. uv run pytest tests/unit).

With pip (legacy)

This path is preserved for compatibility with existing tooling; new contributors should prefer uv above.

If you do not have a Python virtual environment, create one using

python3 -m venv .venv/

and activate it using

source .venv/bin/activate

To install an instance of FPy for development, run:

pip install -e .[dev]

To uninstall FPy, run:

pip uninstall fpy2

Testing

There are a number of tests that can be run through the Makefile including

make lint

to ensure formatting and type safety;

make unittest

to run the unit tests;

make infratest

to run the infrastructure tests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fpy2-0.1.10.tar.gz (282.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fpy2-0.1.10-py3-none-any.whl (339.5 kB view details)

Uploaded Python 3

File details

Details for the file fpy2-0.1.10.tar.gz.

File metadata

  • Download URL: fpy2-0.1.10.tar.gz
  • Upload date:
  • Size: 282.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for fpy2-0.1.10.tar.gz
Algorithm Hash digest
SHA256 946361a0ae71fb9cb7bf0f751023af4077ad49678c4667fa09e01ce467f1b272
MD5 836eeda896eb8231770061964b8d1370
BLAKE2b-256 19549d78b47ac8e7967a00ebe96bf835b32a9b3803d75e4c719e99818619fd2c

See more details on using hashes here.

File details

Details for the file fpy2-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: fpy2-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 339.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for fpy2-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 c589a6d2c393ad10ba034f447e971df0698f4dc341a722053eeb0874165ce5f5
MD5 276197b8089f4d8ae9bf3071b867beae
BLAKE2b-256 d2380f9638e3e908ab31d69697772433657135cdba005959bd9861226ac2bd1a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page