Some things to think about:
- A given type will sometimes have a
randorlogpdf, or neither, or both. The “logpdfbut norand” case isn’t covered by the original API, but it comes up, for example in energy-based models. - Will there ever be cases where we know a given type has a
randmethod, but we don’t realize there’s also alogpdf? Or vice-versa? Can this cause trouble? - Should we focusing so narrowly on distributions, rather than on measures more broadly? (#manifolds Slack with @sethaxen got me thinking about this)
- If we represent measures, we should have a way to easily get to Lebesgue measure on the same space.
- How can we bring mathematical laws in for use in tests?
- If we went in that direction, could we still keep it easy to extend and add new distributions and combinators?