/bugs2foppl

Transpiler for probabilistic programming languages: BUGS to FOPPL

Primary LanguageClojure

BUGS to FOPPL transpiler

BUGS (Bayesian inference Using Gibbs Sampling) is a software for the Bayesian analysis of statistical models using Markov chain Monte Carlo (MCMC) methods. It allows to describe graphical models using a declarative langauge.

FOPPL (First Order Probabilistic Programming Language) is a stripped down version of Anglican, a probabilistic programming language based on Clojure.

The ANLTRv4 specification of BUGS grammar was obtained heavily inspired with the FLEX+BISON lexing and parsing grammar incorporated in JAGS 4.3.0 source code, in files src/lib/compiler/parser.yy and src/lib/compiler/scanner.ll.

I use my 'custom' version of clj-antlr.