Stan and Stan Math work in plain old C++. But most of
our users use our domain-specific language (DSL), which
is C-like, but not C.
I'm pretty sure PyMC is different in that it has you
build a graphical model using predefined components, not
try to autodiff an arbitrary Python program. I don't know
how easy it is to add components. But it's definitely an
API you need to learn. It's not magic.
Theano, which PyMC is using, is fundamentally different
in that it's symbolic differentiation that generates
code rather than the template overload autodiff that Stan
uses. So they may be targeting Theano when they talk
about branching, etc., which I don't think Theano can do.
(I hate saying all this on public forums without being
sure, hence the hedging.)
Also, anything can be written in 1 line of code with
enough back-end scripting. Like when you call ADVI
from RStan :-)
I don't know how Autograd compares to Stan in speed.
And I also agree we need to ping Daniel---wasn't he going
to write that neural net? If he doesn't have time, I can
do it.
- Bob