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.11.tar.gz (287.3 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.11-py3-none-any.whl (344.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fpy2-0.1.11.tar.gz
  • Upload date:
  • Size: 287.3 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.11.tar.gz
Algorithm Hash digest
SHA256 6cf84fa0c2100381bb5617c8d188fbc99f5a6d524b30b0f152b74677c3cbf870
MD5 1933857b390f0b2bd056f7b56fe475fa
BLAKE2b-256 037259ff6e611d7db1f58f2a805bda944ea6b31b3de0f6d020d0d4c6ad659bdf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fpy2-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 344.6 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.11-py3-none-any.whl
Algorithm Hash digest
SHA256 1b3ca2a618c8688a075fcb65dcc173be9fb48eda7b8729f6c981810de7226440
MD5 635007468190a1f398ca2be8a3cc1952
BLAKE2b-256 ea80ce0103e85f96a2dc019da2f530d1a763b02fe9551018ea81208f7f264e46

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