Content deleted Content added
FrogCatBird (talk | contribs) Added MultiVerse. |
Aclassifier (talk | contribs) m →Probabilistic programming languages: Added a ref to a Wikipedia page. In my opinion this article uses so much specialised jargon that the contents is very difficult to understand. ~~~~ |
||
Line 29:
PPLs often extend from a basic language. The choice of underlying basic language depends on the similarity of the model to the basic language's [[Ontology (information science)|ontology]], as well as commercial considerations and personal preference. For instance, Dimple<ref name="DMPL"/> and Chimple<ref name="CHMPL"/> are based on [[Java (programming language)|Java]], [[Infer.NET]] is based on [[.NET Framework]],<ref name="INFET"/> while PRISM extends from [[Prolog]].<ref name="PRISM"/> However, some PPLs such as [[WinBUGS]] offer a self-contained language, that maps closely to the mathematical representation of the statistical models, with no obvious origin in another programming language.<ref name="BUGS"/><ref name="Stan"/>
The language for winBUGS was implemented to perform Bayesian computation using Gibbs Sampling (and related algorithms). Although implemented in a relatively unknown programming language (Component Pascal), this language permits [[Bayesian_inference|Bayesian inference]] for a wide variety of statistical models using a flexible computational approach. The same BUGS language may be used to specify Bayesian models for inference via different computational choices ("samplers") and conventions or defaults, using a standalone package winBUGS (or related R packages, rbugs and r2winbugs) and JAGS (Just Another Gibbs Sampler, another R package). More recently, other languages to support Bayesian model specification and inference allow different or more efficient choices for the underlying Bayesian computation, and are accessible from the R data analysis and programming environment, e.g.: [[Stan (software)|Stan]], NIMBLE and NUTS. The influence of the BUGS language is evident in these later languages, which even use the same syntax for some aspects of model specification.
Several PPLs are in active development, including some in beta test. Two popular tools are Stan and [[PyMC]].<ref>{{Cite web|url=http://blog.fastforwardlabs.com/2017/01/30/the-algorithms-behind-probabilistic-programming.html|title=The Algorithms Behind Probabilistic Programming|access-date=2017-03-10}}</ref>
|