Taufeeq_Mowzer
Should Elixir invest in becoming a truffle language for Graalvm?
-Seeing that the Graalvm offers support for many programming languages and has a guide on adding your own langauge. I’m thinking that it could open doors with respect to extending Elixir functionality by using tooling provided from another ecosystem.
-Anyone familiar with the graalvm and their technologies feel that there’s anything their ecosystem can provide us with (I read it supports already ruby/js/python/lua). Do you think Elixir can leverage using the Graalvm in any way for things that we might not use Elixir for exclusively like cli/desktop tools/big data etc (like maybe if I’d want to have a desktop tool developed in Elixir, but my use case prefers it to have a faster startup time that isn’t always an option with beam)?
-I’ve also seen recently on Techempower, es4x Javascript microframework (using graalvm) is around 36% more performant than the fastest Go microframework. I cannot say that the reason for its performance is that it runs on Graalvm instead of nodejs (it uses postgres while most of the top Go frameworks use mysql), but i feel that it probably did play a role in its performance…I’m all in on phoenix btw, but I’m not sure about the of its performance metrics on TechEmpower, I’ve read people mention that TechEmpowers metrics of Phoenix isn’t true, but I have too little knowledge to speak on that…this isn’t necessarily part of the discussion, but i feel if there is an issue with the techampower benchmark, then it should be remedied.
I don’t know if it’s possible to even do this, but I am looking forward to yours ideas/opinions on the subject.
Most Liked
Nicd
Note that a lot (most?) of the power of Elixir lies in the pre-emptive scheduling of BEAM. GraalVM doesn’t have green threads / coroutines, just relying on OS threads. This means that you would have to practically reimplement BEAM on the JVM/GraalVM to get the same kind of guarantees that we have, or opt for something like Akka. There is some prior art (Erjang) for reimplementing but it’s not a simple task.
evadne
Seen GitHub - baratharon/graal-erl · GitHub
Seen GitHub - yzyzsun/truffle-erlang: Erlang implementation built on GraalVM/Truffle · GitHub
It is probably an interesting project but I’d not bet my production budget on it for now. The more targets you add the more problems you have… and if you need that sort of performance why not write the code in an already supported language.
Sebb
I don’t want to go offtopic, but I have to say, that Elixir is not a “pure web dev shop”.
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









