Reworking Distributions.jl

Some things to think about:

  • A given type will sometimes have a rand or logpdf, or neither, or both. The “logpdf but no rand” 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 rand method, but we don’t realize there’s also a logpdf? 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?
3 Likes