Literature Review
‣ Relevant Existing Probabilistic Programming Libraries/Languages
‣ Papers
Probabilistic Programming
- An Introduction To Probabilistic Programming
- Lightweight Implementations of Probabilistic Programming Languages Via Transformational Compilation - David Wingate, Andreas Stuhlmüller, and Noah Goodman. 2011.
- Practical Probabilistic Programming with Monads - Ścibior, Adam, Zoubin Ghahramani, and Andrew D. Gordon. Proceedings of the 2015 ACM SIGPLAN Symposium on Haskell. 2015.
- Denotational Validation of Higher-Order Bayesian Inference - Ścibior, Adam. 2018.
- Functional Programming for Modular Bayesian Inference - Ścibior, Adam, Ohad Kammar, and Zoubin Ghahramani. Proceedings of the ACM on Programming Languages 2. ICFP (2018): 1-29.
- Formally Justified and Modular Bayesian Inference for Probabilistic Programs - Ścibior, Adam Michał. Diss. University of Cambridge, 2019.
Effect Systems
- Freer Monads, More Extensible Effects - Kiselyov, Oleg, and Hiromi Ishii. ACM SIGPLAN Notices 50.12 (2015): 94-105.
- Fusion For Free - Wu, Nicolas, and Tom Schrijvers. International Conference on Mathematics of Program Construction. Springer, Cham, 2015.
- Building Haskell Programs with Fused Effects - Thomson, Patrick. Strange Loop, 2019.
- Monad Transformers and Modular Algebraic Effects - Schrijvers, Tom, et al. Proceedings of the 12th ACM SIGPLAN International Symposium on Haskell. 2019.
- Modular effects in Haskell through Effect Polymorphism and Explicit Dictionary Applications: A New Approach and the μVeriFast Verifier as a Case Study - Devriese, Dominique. Proceedings of the 12th ACM SIGPLAN International Symposium on Haskell. 2019.
- Selective Applicative Functors - Mokhov, Andrey, et al. Proceedings of the ACM on Programming Languages 3.ICFP (2019): 1-29.
- Effects for Less - Alexis, King. Zurihac, 2020.
- Effect Handlers in Haskell, Evidently - Xie, Ningning, and Daan Leijen. Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell. 2020.
Staging
- Multi-stage Programs In Context - Pickering, Matthew, Nicolas Wu, and Csongor Kiss. Proceedings of the 12th ACM SIGPLAN International Symposium on Haskell. 2019.
- Selective Staged Parser Combinators - Willis, Jamie, Nicolas Wu, and Matthew Pickering. Proceedings of the ACM on Programming Languages 4.ICFP (2020): 1-30.
- Staged Sums of Products - Pickering, Matthew, Andres Löh, and Nicolas Wu. Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell. 2020.
Inlining
- Secrets of the GHC inliner - Jones, Simon Peyton, and Simon Marlow. Journal of Functional Programming 12 (2002).
Codensity Transformations
- Free Monads for Less: Codensity - Kmett, Edward. 2011.
- Kan Extensions for Program Optimisation - Hinze, Ralf. International Conference on Mathematics of Program Construction. Springer, Berlin, Heidelberg, 2012.
Coroutines
- Faster Coroutine Pipelines - Spivey, Michael. ICFP. 2017.
- Faster Coroutine Pipelines: A Reconstruction - Pieters, Ruben P., and Tom Schrijvers. International Symposium on Practical Aspects of Declarative Languages. 2019.
Empirical Evaluation Guidelines
‣ Libraries
Effect System Libraries
- mtl
- freer-simple - (a descendant of the freer-effects library, which is a descendant of the freer library, which is a descendant of the extensible-effects library.)
- fused-effects
- polysemy
- eff - (the ghc proposal can be found here.)