  This paper presents PFLP, a library for probabilistic programming in the
functional logic programming language Curry. It demonstrates how the concepts
of a functional logic programming language support the implementation of a
library for probabilistic programming. In fact, the paradigms of functional
logic and probabilistic programming are closely connected. That is, language
characteristics from one area exist in the other and vice versa. For example,
the concepts of non-deterministic choice and call-time choice as known from
functional logic programming are related to and coincide with stochastic
memoization and probabilistic choice in probabilistic programming,
respectively. We will further see that an implementation based on the concepts
of functional logic programming can have benefits with respect to performance
compared to a standard list-based implementation and can even compete with
full-blown probabilistic programming languages, which we illustrate by several
benchmarks. Under consideration in Theory and Practice of Logic Programming
(TPLP).
