Computer Science, Logic in Computer Science Unifying Semirings and Monads in Probabilistic Programming Languages December 27, 2023