Journal of Logic Programming
Probabilistic reasoning in intelligent systems: networks of plausible inference
Probabilistic reasoning in intelligent systems: networks of plausible inference
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
An analysis of first-order logics of probability
Artificial Intelligence
The essence of functional programming
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Self-applicable online partial evaluation of the pure lambda calculus
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A generalization of exceptions and control in ML-like languages
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Building domain-specific embedded languages
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Bucket elimination: a unifying framework for probabilistic inference
Learning in graphical models
Deriving backtracking monad transformers
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
The next 700 programming languages
Communications of the ACM
Stochastic lambda calculus and monads of probability distributions
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Simulation Approaches to General Probabilistic Inference on Belief Networks
UAI '89 Proceedings of the Fifth Annual Conference on Uncertainty in Artificial Intelligence
Weighing and Integrating Evidence for Stochastic Simulation in Bayesian Networks
UAI '89 Proceedings of the Fifth Annual Conference on Uncertainty in Artificial Intelligence
The Design of a Pretty-printing Library
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
AutoBayes: a system for generating data analysis programs from statistical models
Journal of Functional Programming
Combinators for program generation
Journal of Functional Programming
Relating models of backtracking
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
FUNCTIONAL PEARLS: Probabilistic functional programming in Haskell
Journal of Functional Programming
Introduction to Statistical Relational Learning (Adaptive Computation and Machine Learning)
Introduction to Statistical Relational Learning (Adaptive Computation and Machine Learning)
Jones optimality and hardware virtualization: a report on work in progress
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A glimpse of symbolic-statistical modeling by PRISM
Journal of Intelligent Information Systems
Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages
Journal of Functional Programming
The BATmobile: towards a Bayesian automated taxi
IJCAI'95 Proceedings of the 14th international joint conference on Artificial intelligence - Volume 2
Efficient, correct simulation of biological processes in the stochastic pi-calculus
CMSB'07 Proceedings of the 2007 international conference on Computational methods in systems biology
Effective Bayesian inference for stochastic programs
AAAI'97/IAAI'97 Proceedings of the fourteenth national conference on artificial intelligence and ninth conference on Innovative applications of artificial intelligence
Typing control operators in the CPS hierarchy
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Lightweight monadic programming in ML
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
A type theory for probability density functions
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Purely functional lazy nondeterministic programming
Journal of Functional Programming - Dedicated to ICFP 2009
Delimited control in OCaml, abstractly and concretely: system description
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
Delimited control in OCaml, abstractly and concretely
Theoretical Computer Science
Dynamic symbolic computation for domain-specific language implementation
LOPSTR'11 Proceedings of the 21st international conference on Logic-Based Program Synthesis and Transformation
Elementary probability theory in the eindhoven style
MPC'12 Proceedings of the 11th international conference on Mathematics of Program Construction
The principles and practice of probabilistic programming
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Deriving probability density functions from probabilistic functional programs
TACAS'13 Proceedings of the 19th international conference on Tools and Algorithms for the Construction and Analysis of Systems
A visual language for explaining probabilistic reasoning
Journal of Visual Languages and Computing
What are the Odds?: probabilistic programming in Scala
Proceedings of the 4th Workshop on Scala
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
Probabilistic relational verification for cryptographic implementations
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Tabular: a schema-driven probabilistic programming language
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Dynamic enforcement of knowledge-based security policies using probabilistic abstract interpretation
Journal of Computer Security
Hi-index | 0.00 |
Two general techniques for implementing a domain-specific language (DSL) with less overhead are the finally-tagless embedding of object programs and the direct-style representation of side effects. We use these techniques to build a DSL for probabilistic programming , for expressing countable probabilistic models and performing exact inference and importance sampling on them. Our language is embedded as an ordinary OCaml library and represents probability distributions as ordinary OCaml programs. We use delimited continuations to reify probabilistic programs as lazy search trees, which inference algorithms may traverse without imposing any interpretive overhead on deterministic parts of a model. We thus take advantage of the existing OCaml implementation to achieve competitive performance and ease of use. Inference algorithms can easily be embedded in probabilistic programs themselves.