Abstract
Probabilistic programming languages (PPLs) allow programmers to construct statistical models and then simulate data or perform inference over them. Many PPLs restrict models to a particular instance of simulation or inference, limiting their reusability. In other PPLs, models are not readily composable. Using Haskell as the host language, we present an embedded domain specific language based on algebraic effects, where probabilistic models are modular, first-class, and reusable for both simulation and inference. We also demonstrate how simulation and inference can be expressed naturally as composable program transformations using algebraic effect handlers.
Original language | English |
---|---|
Article number | 104 |
Pages (from-to) | 381-410 |
Number of pages | 30 |
Journal | Proceedings of the ACM on Programming Languages |
Volume | 6 |
Issue number | ICFP |
Early online date | 31 Aug 2022 |
DOIs | |
Publication status | Published - 11 Sept 2022 |
Bibliographical note
Funding Information:Our sincere thanks to Matija Pretnar for shepherding this paper during the conditional acceptance phase, and to the anonymous reviewers for their valuable discussion. We also thank Alessio Zakaria who has been a constant source of support and drive behind our ideas, and the members of the Bristol Programming Languages research group for creating the wonderful environment for this work. This work is partly supported by the EPSRC grant EXHIBIT : Expressive High-Level Languages for Bidirectional Transformations (EP/T008911/1).
Publisher Copyright:
© 2022 Copyright held by the owner/author(s).
Research Groups and Themes
- Programming Languages
Fingerprint
Dive into the research topics of 'Modular Probabilistic Models via Algebraic Effects'. Together they form a unique fingerprint.Student theses
-
Effects and effect handlers for probabilistic programming
Nguyen, M. H. (Author), Wang, M. (Supervisor) & Perera, R. (Supervisor), 5 Dec 2023Student thesis: Doctoral Thesis › Doctor of Philosophy (PhD)
File