  We give an adequate denotational semantics for languages with recursive
higher-order types, continuous probability distributions, and soft constraints.
These are expressive languages for building Bayesian models of the kinds used
in computational statistics and machine learning. Among them are untyped
languages, similar to Church and WebPPL, because our semantics allows recursive
mixed-variance datatypes. Our semantics justifies important program
equivalences including commutativity.
  Our new semantic model is based on `quasi-Borel predomains'. These are a
mixture of chain-complete partial orders (cpos) and quasi-Borel spaces.
Quasi-Borel spaces are a recent model of probability theory that focuses on
sets of admissible random elements. Probability is traditionally treated in cpo
models using probabilistic powerdomains, but these are not known to be
commutative on any class of cpos with higher order functions. By contrast,
quasi-Borel predomains do support both a commutative probabilistic powerdomain
and higher-order functions. As we show, quasi-Borel predomains form both a
model of Fiore's axiomatic domain theory and a model of Kock's synthetic
measure theory.
