4 ms·
What's the goal here? It seems like they want to make elixir the new AI language, but why should I go from python to Elixir? I know it seems a dumb question but
by anton_ai 5y ago
What's the goal here? It seems like they want to make elixir the new AI language, but why should I go from python to Elixir? I know it seems a dumb question but I can't find in the link any reason why. I really like python but at the same time I would like to have something faster but also with pandas, numpy, statsmodel and so on
- joelbluminator 5y ago
- josevalim 5y agoHi @joelbluminator, may I ask you why you feel the need to frequently jump on Elixir threads here and on Reddit and be negative about other people's work?
- joelbluminator 5y agoIt's completely unrealistic Elixir (or anything else - Julia, whatever) will replace Python as the main AI/ML language, that's what I wanted to convey. I agree I was being a bit too snarky but what I said is true and was an answer to what OP asked. You can't be that sensitive while reading internet comments, you'll have a rough time. As for my past comments on Elixir - I tend to remain factual. I used to have a hard problem with the way the Elixir community was crapping all over Ruby to poach mind share but I moved on. Ruby also did that to Java when it was starting so that's life.
- brightball 5y agoIt probably won't and I don't think that's the goal. However, Elixir is making pretty significant roads for distributed data processing pipelines thanks to the Broadway framework (https://elixir-broadway.org/ https://elixir-broadway.org/). AI/ML applications were going to be a natural next step after that. It's exciting for Elixir because number crunching was the biggest computational weakness for the language for the last few years and many thought it was a limitation of BEAM languages in general. Jose's work has shown that it's not.
- josevalim 5y agoYes, and I have replied we are not trying to make Elixir the new AI language either. In any case, I was not speaking about this comment exclusively. It is a recurring pattern. But given you have somehow managed to make this my fault, I will drop the conversation. Have a good one!
- joelbluminator 5y agoI'm saying for anyone's own mental health, we shouldn't expect constant praise and positivity from comments. You're gonna read stuff you won't like on the internet.
- weatherlight 5y agoThat's kind of your thing though, spouting stuff that people don't like, how's that treating you?
- joelbluminator 5y agoSometimes I provide a different point of view on internet comments. It's a big part of discussion forums you know.
- weatherlight 5y ago"Sometimes" is a stretch.
- joelbluminator 5y agoYou seem to be doing the same thing ...
- weatherlight 5y agojust calling you out when and where I see you.
- 1_player 5y agoOh yes, it's not the first time I've caught them trolling whenever someone posts about Elixir: https://news.ycombinator.com/item?id=27215633 https://news.ycombinator.com/item?id=27215633
- bullfightonmars 5y agoThis a parallel and independent ecosystem for numerical computing with equivalent libraries: * pandas - explorer * numpy - nx * statsmodel - Not sure this exists yet The article answers this pretty well. However, our goals are also to: * make Elixir a suitable platform for new Machine Learning developments * fully leverage the power provided by the platform Elixir runs on, the Erlang VM * provide consistency and stability, especially when working on a domain that is still actively evolving For those reasons, we chose to invest on Nx as its own foundation, agnostic to any particular framework. The road is definitely longer but we also believe the pay-off will be higher too!
- hosh 5y agoI think right now, this is for people who already know and need the advantages of Erlang/Elixir and want to be able to do numerical computing without having to resort to a NIF or ports. Numerical computing has been one of the big weaknesses with the BEAM platform, even though it is among the first things people think about when they find out about how BEAM does concurrency. I can tell you that many Elixir developers are quite excited about this. It is definitely scratching an itch. I don't know how this is emerging. If I take a stab at it, BEAM/OTP/Erlang/Elixir is very good at coordinating among many concurrent processes as well as handling failures that come with it. There really isn't any other language platform that does that as well, including Python. (Although there is interest in recreating those advantages in Rust). The distributed computing is built on top of those concurrency primitives. So when one thinks about adding numerical computing into the mix, I think of: - Broadway (an Elixir library) that handles workflows from unreliable data sources. It is already in production use to handle massive, distributed web scraping operations, so embedding a data transform in there with numeric computing will have good synergies - IoT applications, both at the edge with Nerves, and with the command/control for IoT. Each of the IoT devices are unreliable (power and network), and OTP already has great facility for that. Being able to do numeric computing at the edge is a thing.
- anton_ai 5y agoperfect, this is exactly what I wanted to know. The IoT part is very interesting
- dnautics 5y ago> I really like python Give elixir a shot. I used to use python (though not as much as I used ruby) and I will never go back to python.
- brightball 5y agoTried to learn Python a few years ago. I generally like almost every language I try. I'll even sing you Perl's praises. After learning other languages though, I cannot see the point behind using Python aside from broad adoption. Couldn't imagine choosing it for any problem I needed to solve. I was actually really looking forward to it after hearing for years about how Python would have "one way to do everything" but there's a gazillion different ways just to run Python on your machine, different versions of it to choose from. Should I be running the local system version, PyPy, Stackless, Anaconda, Miniconda? Is PyEnv the weapon of choice for multiple Python codebases or is it one of the many others? The Python 2 vs 3 migration stuff I expected to be a little wonky but all of the stuff on top of it was just weird for a community that had so long been advertised as having agreed on solutions. I did finally get why a lot of experienced developers call it "The Okayest" language.
- josevalim 5y agoThat's an excellent question! We are not trying to make Elixir the new AI language, but one possible language for AI. @hosh covered some of the use cases in his reply and I can add two more insights: * Lately we have seen functional ideas brought into Python through projects like JAX and Thinc.ai and I think exploring those concepts within a functional language is both interesting and exciting (and we are not the only ones doing so!) * Besides IoT and data pipelines, there is potential in mixing some of the current ML trends, such as Distributed and Federated Learning, with the capabilities of the platform We likely aren't much attractive to Python developers right now, unless you are interested in contributing/designing ML tooling (for learning, hobby, or professional reasons) or you have a use case that suits one of the mentioned strengths of the platform.