MCMC, Particle Filtering, and Programmable Hierarchical Modeling
