Great response Carin. Just wanted to chime in and say, while the amount of work shouldn't be underestimated to maintain a new language binding, I'd love to see some Rust support. The interop patterns between Rust and C/C++ in particular could make propagating errors a little nicer of an experience. I've also often wished we had a native but memory-safe language that had a binding with MXNet.
On Tue, Jan 29, 2019 at 10:13 AM Carin Meier <carinme...@gmail.com> wrote: > Hi Zach, > > I'm the original author of the Clojure package so I can give you my > perspective, (although your path might be different). > > First, one of the advantages that MXNet has of the other deep learning > libraries is its multi-language support. People can program and develop in > the language of their choice. > > The path the Clojure package took is that it originated in an github issue. > From there, the main package was developed in my personal repo until it got > to a point that I could share it and get feedback from other people in the > Clojure community. Once I felt like it was developed enough, I sent out a > email to the dev list, opened a PR, and drafted up some documentation on > the Design and Architecture as well as the state of things on the wiki > https://cwiki.apache.org/confluence/display/MXNET/MXNet+Clojure. > > After much feedback and review, it was brought in under as a "contrib" > package, where it is spending time stabilizing and generally improving to > the point that it can "graduate". > > It's a long term commitment to bring a new language support in, but it is > very rewarding for both the MXNet project and your language community. > > One valuable piece of feedback that I got on the original PR > https://github.com/apache/incubator-mxnet/pull/11205 that might be > valuable > for you as well to think of, came from Kovas Boguta on higher level > concerns: > > - What will the debug experience be like? How do users track down errors > that happen in the front end Rust code or lower level code? > - What does maintenance look like? How does the Rust API evolve with the > rest of the library? > - How do people learn to use this thing? Is there any easy way to go from > the current MXNet docs to the Rust version. How is the documentation going > to work long term. > > I hope this helps, > Carin > > > > > On Tue, Jan 29, 2019 at 5:05 AM Zach Boldyga <z...@scalabull.com> wrote: > > > Hey y'all! > > > > I'm thinking about spending this week working on a rust client lib for > > MXNet. saw a little bit of chatter about this in the github issues and no > > strong existing crates at the moment. Any pointers on approaching this > in a > > way that will lead to it being adopted as an officially supported client > > library? And overall yay/nay on whether adding a Rust lib makes sense & > why > > / why not? > > > > Zach Boldyga > > Scalabull | Founder > > 1 (866) 846-8771 x 101 > > >