Tekstiviesti: Commutative semantics for probabilistic programming