🎼 Fugue User Guide
A production-ready, monadic probabilistic programming library for Rust
Write elegant probabilistic programs by composing Model
values in direct style; execute them with pluggable interpreters and state-of-the-art inference algorithms.
Supported Rust: 1.70+ • Platforms: Linux / macOS / Windows • Crate: fugue-ppl
on crates.io
Check out these resources to get started:
- Getting Started - Installation and first steps
- How-To Guides - Practical guides for common tasks
- Tutorials - In-depth learning materials
- API Reference - Complete API documentation
About Fugue
- 🧩 Monadic PPL: Compose probabilistic programs using pure functional abstractions
- 🔒 Type-Safe Distributions: 10+ built-in probability distributions with natural return types
- 📊 Multiple Inference Methods: MCMC, SMC, Variational Inference, ABC
- 🔍 Comprehensive Diagnostics: R-hat convergence, effective sample size, validation
- 🚀 Production Ready: Numerically stable algorithms with memory optimization
- ✨ Ergonomic Macros: Do-notation (
prob!
), vectorization (plate!
), addressing (addr!
)
Installation
[dependencies]
fugue-ppl = "0.1.0"