popoinikov

popoinikov

Sorry for the ridiculous question.

Вut I got the impression that knowing of the Rust language
will subsequently be a necessary skill for people that using Elixir.

Maybe I’m completely wrong?

I ask in connection with the fact that learning such a complex language as
Rust will require a lot of time for a person who is not a polyglot.
I really love Elixir, but I’m afraid I don’t have enough strength and the ability
to fully learn Rust just to write short Nifs on it.

Maybe, if so, it is just need to learn a subset of the Rust language?

(But, when I look at the implementation of the lists in Rust,
I’m starting to feel half as good).

Sorry one more time. I’m lost, Please help the newbie.

Showing Posts 1 to 10

dorgan

dorgan

Nah, the thing with Rust is that it’s a nice language and people are able to implement NIFs with it thanks to Rustler. And you need NIFs when you have already exhausted all the tools available in elixir/erlang or need to squeeze every bit of performance for a specific operation by working outside of the beam.

So don’t worry about it.

zachgarwood

zachgarwood

Writing NIFs is something that most Elixir developers won’t ever want/need to do. Unless you have some particular use case in mind which will require the use of NIFs, I don’t think you need worry. Cross that bridge when you come to it.

popoinikov

popoinikov OP

doorgan, zachgarwood.

Thank you very much for the detailed answer.
But I didn’t understand why then the community is so
celebrating the appearance of the Rustler library?

NobbZ

NobbZ

Because it makes it easy to interface rust, and takes the burden of a lot of boilerplate code you had to write otherwise to interface with the erlang distributed C-Headers for writing NIFs.

And Rust is memory safe and fast, C is just fast. Thats why Rust is so much prefered over C, though its possible to write NIFs in C or C++ as well, or even Pascal or anything else that is able to call into C and gets called from C. But not everything makes sense…

dimitarvp

dimitarvp

Erlang and Elixir are excellent glue languages, and excellent in handling a lot of network requests at once. You’ll be very hard-pressed to find another runtime that does these things so rock-solid and fast.

That being said, they definitely fall short if you need mega-fast processing that requires pure CPU muscle – like various matrix calculations, deep learning, image processing, those kinds of things.

People praise Rustler because, as @NobbZ said, it makes it very easy to integrate your own Rust code with your Elixir code. But that’s only if you need it. Most of the BEAM projects are perfectly fine being Erlang or Elixir only.

popoinikov

popoinikov OP

Thank you all very much.
But another question.

Could such a situation may be arise:

To learn the Scala, or clojure you need to know Java.
To learn the Elixir, you need to know Erlang and Rurt?

praveenperera

praveenperera

To learn elixir you only need to learn elixir.

Maybe later if you start doing some really, really cool stuff you might want to learn Erlang or Rust.

But at that point that’s a good problem to have … because you’re doing cool stuff

popoinikov

popoinikov OP

Thanks to all.
Аccording to Russian custom
I will drink for the health of everyone who answered me!

doorgan
zachgarwood
NobbZ
dimitarvp
praveenperera

praveenperera

praveenperera

nostrovia

popoinikov

popoinikov OP

paveenperera
Thank You.
I have already started.
It was very pleasant to have a drink while
feeling support at such a distance.

Where Next? Top

Trending in Questions Top

RSP87
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
nseaSeb
Hello, I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
brecabral
Documentation While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
RemyXRenard
I’m seeing that a list inside a Kino.DataTable will be interpreted as a charlist, even if the Kino.configure() is set to charlists: :as_l...
New
velrest
So my question is quite simple and i have found no conclusive answer on forum, google or AI. Should we use :erlang.float for Integer to ...
New
samoloth
Hi, I’ve just set up an application with ash_authentication. There is only magic link strategy for now, so there is no confirmation add o...
New
FlyingNoodle
If a change or preparation module uses Ash.Changeset.get_argument/2 or Ash.Query.get_argument/2 (or any of the other get_argument functio...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews