chhenning / nupic

Community Fork of Numenta's Platform for Intelligent Computing (NuPIC)
GNU Affero General Public License v3.0
6 stars 2 forks source link

swig vs. pybind11? #30

Open dan-stromberg opened 5 years ago

dan-stromberg commented 5 years ago

Can someone please help me understand why the community edition is abandoning swig for pybind11?

pybind11 is probably nicer for Python, but I suspect it won't work well for other languages.

Also, it seems like switching to pybind is a pretty large change that may even have implications for the API. Would it make sense to migrate to pybind After the switch to python 3.x?

Was there a real show-stopping bug or missing feature preventing the continued use of swig?

Thanks!

breznak commented 5 years ago

You could ask directly here https://github.com/htm-community/nupic.cpp/issues

Was there a real show-stopping bug or missing feature preventing the continued use of swig?

i think one of the main reasons was Windows & Python 3, both ready now in community. Also, pybind11 is much nicer to write bindings.

but I suspect it won't work well for other languages.

likely, in our survey noone really cared about other languages, people wanted either python + c++ backend, or c++. There's also native Java, pytorch,..repos.