Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Library bindings for other languages #202

Closed
rcurtin opened this issue Dec 29, 2014 · 6 comments
Closed

Library bindings for other languages #202

rcurtin opened this issue Dec 29, 2014 · 6 comments

Comments

@rcurtin
Copy link
Member

rcurtin commented Dec 29, 2014

Reported by speet3 on 30 Jul 42178952 12:20 UTC
Is it a good idea to generate and maintain bindings for languages other than C++? Perhaps languages like java, python or php?

That way a developer using one of those languages could take advantage of the speed offered our C++ implementation without wading through the torrents of newbie C++ development pitfalls.

Perhaps these bindings could be automatically generated by a tool like swig.

Migrated-From: http://trac.research.cc.gatech.edu/fastlab/ticket/208

@rcurtin rcurtin self-assigned this Dec 29, 2014
@rcurtin rcurtin added this to the mlpack 2.0.0 milestone Dec 29, 2014
@rcurtin
Copy link
Member Author

rcurtin commented Dec 30, 2014

Commented by jcline3 on 23 May 42179006 10:37 UTC
It sounds like a generally good idea to me, but can an automated tool like swig cope with our use of templates over polymorphism in a sane manner?

@rcurtin
Copy link
Member Author

rcurtin commented Dec 30, 2014

Commented by rcurtin on 12 Feb 42201694 10:02 UTC
I meant to respond to this earlier, but this is a long-term goal. We should provide interfaces to MATLAB, R, and Python, plus whatever else is easy. I don't know enough to comment on if SWIG would be good, but Patrick Mason told me he had MLPACK bindings working for R, but then he ran out of free time during the semester. I'm hoping he's interested in working with us over the summer and he can flesh out this idea a bit more.

@rcurtin
Copy link
Member Author

rcurtin commented Jan 9, 2015

For some clarification on where this idea has gone, see the summer of code ideas page and the automatic bindings project: https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas

@MikeLing
Copy link
Contributor

Hey @rcurtin, I have experience for python coding(two years experience for Mozilla A-team and I worked for it as GSoC student) and I'm a postgraduate student majoring in CS. Could I worked for Python binding for mlpack? However, I never do the binding job before, could you give me some information about it?

@MikeLing
Copy link
Contributor

After I found some more information about swig[1][2], I guess I know how to bind it with python. Do I need to create a PR on my branch for discussing for now?

[1] http://www.swig.org/Doc3.0/SWIG.html#SWIG
[2]http://www.swig.org/Doc3.0/Python.html#Python

@rcurtin
Copy link
Member Author

rcurtin commented Oct 12, 2017

I'm going to go ahead and close this now that the automatic binding generator is done and we have Python bindings. Although it would be nice to add more languages (and that will happen over time), we can either open a new issue for that or simply work on it without an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants