Probabilistic programming in Scala