software
Birch
An open source probabilistic programming language
Birch is an open source probabilistic programming language that transpiles to C++. It combines automatic differentiation, automatic marginalization, and automatic conditioning to bring advanced modeling tools to statisticians, data scientists, and machine learning engineers.
Probabilistic models are specified by writing a program to simulate the joint distribution. Inference methods are also written in Birch. Sequential Monte Carlo (SMC) is currently supported, with analytical optimizations such as locally-optimal proposals and Rao-Blackwellization applied automatically.