Awesome, thanks for the info! As far from the documentation, I took a quick peek at it and I think I should managed on my own otherwise I'll send you emails to clarify stuff that aren't clear on my end.
Concerning invoking C++ from C#, there's a straightforward approach to it I haven't used in the past. This project will let me get more knowledge about C# and ML and I'm loving it already. Link 1: https://msdn.microsoft.com/en-us/library/ms235282.aspx Link 2: https://www.codeproject.com/tips/695387/calling-csharp-net-methods-from-unmanaged-c-cplusp >From what you said and what I found in C#, I think what I'll be building will somehow look closer to what you did as a binding for the command line! Basically, what you'd like in the end would be a library, right? A dll that will compile the C++ project and provide the necessary wrappers so C# devs are available to use mlpack as if it was native C#? What should we agree on to define to determine if the project is complete? Thanks, Kevin On Tue, Feb 27, 2018 at 2:21 PM Ryan Curtin <[email protected]> wrote: > On Tue, Feb 27, 2018 at 06:17:54PM +0000, Kevin Avignon wrote: > > Hi, > > > > I'm a GSOC alumni and I've been looking into the available organizations > > this year. I've been more interested by AI & ML lately. > > > > In order to know more about this, I got into the AI Nanodegree (short 6 > > months program) given by Udacity. Here's a link: > > https://www.udacity.com/course/artificial-intelligence-nanodegree--nd889 > > > > I took a look at one of the projects your organization is proposing for > the > > students. What I'd like to propose is a binding to C#. At my workplace, > I'm > > considered as the C# Gunslinger. I love working with .NET and I've been > > loving working with it for the past 3 years. What I'm proposing is to be > > given the chance to work on it. And to have potentially someone to help > me > > out from time to time if I have questions about using bindings for > MLpack. > > > > I won't be a GSOC student, I'm a full-time developer who's willing to > work > > on it so we can make the project available to new developers and I'd love > > to get a crack at this thing. > > Hey Kevin, > > Thanks for getting in touch. I think it would be really exciting to > provide mlpack bindings to C#, but, I don't know much of anything about > how C++ code can be called from C#. If you are a gunslinger, maybe you > can provide some good insight on that. :) > > Currently we have an automatic bindings system that basically aims to > provide the same interface to any language that we bind to. Right now > the only bindings we produce are for the command-line and for Python. > For the command line bindings, we simply compile directly to an > executable, but for Python it's a little bit weirder. We have to > compile a program which, when run, produces a Cython binding .pyx file, > and then there is some CMake magic which in turns takes all the > generated .pyx files and compiles them into a usable Python package. > > When I built the system I wrote some (hopefully) comprehensive > documentation here: > > http://mlpack.org/docs/mlpack-git/doxygen/bindings.html > > The primary advantage is that this means we don't have individually > maintained bindings for every language, so when we update a machine > learning algorithm it stays in sync across all languages. This reduces > the maintenance burden significantly. > > So I would imagine, for C#, we could do something roughly similar. I > think what we could provide through this system are a number of > standalone functions (or similar) that the user can call that have the > same functionality as the command-line programs or the Python bindings. > > Let me know what you have in mind as far as how you want to proceed and > contribute. I am sure we can figure something out. :) > > Thanks, > > Ryan > > -- > Ryan Curtin | "Moo." > [email protected] | - Eugene Belford > -- Kevin Avignon (B.eng)
_______________________________________________ mlpack mailing list [email protected] http://knife.lugatgt.org/cgi-bin/mailman/listinfo/mlpack
