News for hackers. Stuff that matters.
Re:Taking ML to production with Rust by rob74 on Monday December 02, 2019 @08:32AM (#21682131)
While Swift may be the "latest and greatest" language with official support, if you look at https://www.tensorflow.org/api_docs, it's only one of several (the others being C++, Java, JS, Go and of course Python). Plus, there are community-supported bindings for C#, Haskell, Julia, Ruby, Rust and Scala). Just to make the picture complete...
Re:Taking ML to production with Rust by throwlaplace on Monday December 02, 2019 @08:58AM (#21682294)
Swift for tensor flow aren't bindings - it's a ground up rearchitecting of tensorflow
Re:Taking ML to production with Rust by pjmlp on Monday December 02, 2019 @10:01AM (#21682894)
For Mac OS only apparently.
Re:Taking ML to production with Rust by throwlaplace on Monday December 02, 2019 @10:30AM (#21683193)
Re:Taking ML to production with Rust by pjmlp on Monday December 02, 2019 @10:37AM (#21683265)
Having a package available for a specific OS doesn't mean it is usable, specially when it still requires conditional compilation to import either Darwin or Glibc, instead of Foundation.

And I don't see any Windows there.

Then there is the whole set of libraries that only compile on Apple platforms, no IDE, no Playgrounds and so on.

Re:Taking ML to production with Rust by ynx on Tuesday December 03, 2019 @01:20AM (#21690384)
> it still requires conditional compilation to import either Darwin or Glibc, instead of Foundation

Well, swift-corelibs-foundation has made a lot of progress, and strictly speaking, to a certain point you don't actually want to hide some of the implementation details from the developer. This isn't Java - natively calling out to C is a thing that Swift can and will do.

> I don't see any Windows there.

Look harder. Swift for Windows: https://github.com/compnerd/windows-swift

> no Playgrounds

Swift Playgrounds: https://github.com/save-buffer/swift-repl

> no IDE

official VSCode work: https://github.com/apple/sourcekit-lsp/ + https://github.com/apple/sourcekit-lsp/tree/master/Editors/v...

> and so on

Do tell. What other concerns do you have? You seem deeply misinformed. While Swift may not yet have an ecosystem outside of Apple, it is factually incorrect to say that it is not usable outside of it.

Re:Taking ML to production with Rust by throwlaplace on Monday December 02, 2019 @11:20AM (#21683803)
>specially when it still requires conditional compilation to import either Darwin or Glibc, instead of Foundation.

you don't need to compile from source - binaries are distributed (if you actually read my link instead of assuming it was just github source you would see that).

>And I don't see any Windows there.

yes they're aware of this and it's being worked on

>Then there is the whole set of libraries that only compile on Apple platforms, no IDE, no Playgrounds and so on.

you're moving goal posts in order to be able to have an axe to grind.

your comment was

>For Mac OS only apparently.

the fact that there's a runtime that runs on linux shows that that was incorrect.

>set of libraries that only compile on Apple platforms

i don't know what you're talking about here - s4tf libraries compile on all platforms e.g. https://github.com/eaplatanios/swift-rl

>no IDE, no Playgrounds and so on.

i don't see how xcode being developed by apple (not the s4tf team) has anything to do with whether s4tf is multiplatform.

Re:Taking ML to production with Rust by pjmlp on Monday December 02, 2019 @11:52AM (#21684158)
Not moving goalposts at all.

Swift is only usable in Apple OSes.

Making a tiny subject of its ecosystem available outside of Apple platform doesn't make it usable for something that pretends to replace Python ecosystem on data science.

Re:Taking ML to production with Rust by cwyers on Monday December 02, 2019 @02:20PM (#21685805)
And R has Tensorflow bindings too. https://tensorflow.rstudio.com/
Re:Taking ML to production with Rust by pjmlp on Monday December 02, 2019 @10:01AM (#21682889)
Microsoft also provides Tensorflow bindinds via ML.NET.

So any language that can target .NET is also able to plug into it, and I certainly would pick F# over Swift.

Re:Taking ML to production with Rust by rvz on Monday December 02, 2019 @05:00PM (#21687503)
> Microsoft also provides Tensorflow bindinds via ML.NET.

Well Swift for Tensorflow is more than just a binding to begin with. The difference in maintenance is that Google officially supports Swift whereas Microsoft would be always catching up to keep theirs updated.

> So any language that can target .NET is also able to plug into it, and I certainly would pick F# over Swift.

I can use both Swift for my iOS app (inferencing), training is also possible thanks to Python interoperability (@dynamicCallable), soon to be replaced by native C++ interoperability.

If I chose F#, as much as you may think it is a good choice unless your stack/team is using Microsoft technologies, I see this as a potential sunken cost here and I certainly wouldn't use it for this case and would rather rely on the active maintenance of the Swift/Tensorflow team at Google to improve this rather than using another great language for an unsupported use case.

Re:Taking ML to production with Rust by pjmlp on Monday December 02, 2019 @05:13PM (#21687620)
The big difference being that I can use ML.NET on macOS, Linux, Windows, with Tensorflow lite on the roadmap. Whereas Swift, pretty much is Apple only.

Even your examples are a proof of that.

Zero persons from Swift/Tensorflow team at Google are working on improving Linux/Windows support.

Linux was been mostly volunteer and some IBM contributions.

Windows are just volunteers, and have restarted the port multiple times.