Announcing Squigglepy, a Python package for Squiggle

Link post

Squiggle is a “simple programming language for intuitive probabilistic estimation”. It serves as its own standalone programming language with its own syntax, but it is implemented in JavaScript.

I like the features of Squiggle and intend to use it frequently, but I also frequently want to use similar functionalities in Python, especially alongside other Python statistical programming packages like Numpy, Pandas, and Matplotlib.

The squigglepy package here implements many Squiggle-like functionalities in Python.

The package also has useful utility functions for Bayesian networks (using rejection sampling), pooling forecasts (via weighted geometric mean of odds and others), laplace (including the time-invariant version), and kelly betting.

The package and documentation are available on GitHub.

The package can be downloaded from Pypi using pip install squigglepy.

This package is unofficial and supported by myself and Rethink Priorities. It is not affiliated with or associated with the Quantified Uncertainty Research Institute, which maintains the Squiggle language (in JavaScript).

This package is also new and not yet in a stable production version, so you may encounter bugs and other errors. Please report those so they can be fixed. It’s also possible that future versions of the package may introduce breaking changes.

This package is available under an MIT license.