ShalokShalom
Trending in Talks
LT: The Elixir Hiring Paradox - Arjun Gillard | ElixirConf EU 2026
Comments welcome! View the <span class="hashtag-icon-p...
New
LT: Skode: an ASCII shorthand for audio experimentation - Joseph Stewart | ElixirConf EU 2026
Comments welcome! View the ...
New
Writing Your Own Req Plugin - Jacob Swanner | ElixirConf US 2025
Comments welcome! View the <span class="hashtag-icon-pla...
New
Building Websites with Tableau - Mitchell Hanberg | ElixirConf US 2025
https://www.youtube.com/watch?v=B5e7M-Ogyho
Comments welcome! V...
New
How to Think About Game Servers (Pt 2)
Hernán Rivas Acosta looks at how latency and jitter affect multiplayer games and the techniques d...
New
Reactor Under the Hood: Building a Graph-Based Saga Orchestrator in Elixir, James Harton | Code BEAM
Reactor Under the Hood: Building a Graph-Based Saga Orchestrator in Elixir, James Harton | Code BEAM
Comments welcome! Vi...
New
MoodBot: Raising a Tiny Robot with Elixir, Nerves, and AI - Carsten Rösnick-Neugebauer | Code BEAM
Comments welcome! View...
New
Other Trending Topics
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
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
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
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
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve.
They are GUI (Emerge) and State management (S...
New
Learning Resources>Talks
Latest on Elixir Forum
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #ai
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming











Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
wanton7
Wow another Erlang VM made with Rust! Other one is here GitHub - archseer/enigma: An Erlang VM implementation in Rust · GitHub
isaac-rstor
Feels like this is a problem:.
A process should be exactly what it is in the normal BEAM, otherwise you’re gonna run into problems.
wanton7
Yeah I see more future for ErlangRT because Enigma VM does shortcuts like that.
benwilson512
This is describing how this VM implements a process, it isn’t saying that the process will be something different from the perspective of an erlang programmer.
NobbZ
Tokia does IO based scheduling AFAIK, so the machine will probably behave differently under CPU bound load than the original BEAM.
Programmers on the BEAM usually rely on the fact, that regardless the load of the system, they will eventuelly get some time slot to do their thing.
benwilson512
So, I’m not disagreeing that the new VM may perform differently than the current one. I’m simply making the sort of ontological point that a Future is not fundamentally a different kind of thing than an erlang process as viewed from the VM. A process in the BEAM is a struct with various properties that runs on a threaded work stealing scheduler. That’s exactly what a Future is too.
NobbZ
Well, but the underlying schedulers work differently. While the BEAM is pre-emptive, Tokios futures are not.
Of course, from a (erlang/elixir/whatever) programmer things won’t change. They just
spawntheir way through, but programms will behave differently under load.Of course there might be interest for the changed behaviour, or perhaps its the price some people are willing to pay for other benefits of this re-implementation, but currently I have not yet seen any benefits…
wanton7
I think it’s just like @NobbZ said and you’ll lose one of the biggest benefits of BEAM. Preemptive scheduling was the biggest reason I got interested in Elixir to create web apps..
benwilson512
Elixir / Erlang is preemptive, but the C code that runs a process’s BEAM byte code is not pre-emptive. Languages built on this byte code are effectively preemptive because the underlying C can choose to yield at frequently occurring points in that byte code. Presumably the Rust code inside the Future could work the same way.
It’s entirely possible that I missed something here and their plan is to have each future churn on bytecode till the bytecode does IO, but there’s nothing about a future that requires that that’s the case any more than the fact that the BEAM is written in C.
michalmuskala
I actually think that the new BEAM implementations should look into exploring other design trade-offs - other memory management schemes, different kinds of schedulers, different data representation, interpreters vs compilers, etc. We already have BEAM working like BEAM, so I don’t see much value in just replicating that exactly, on the other hand exploring new ideas might bring back some valuable insight into the main implementation.