Maybe we want to implement some distribution types as first class language elements. This would allow for nested inference and sampling from these distributions.