Programming Bayesian Modeling