ancatrusca

ancatrusca

BEAM There, Done That with Björn Gustafsson- Why did "compile Erlang to native C" lose to bytecode, even though it was 10-20x faster on paper?

New BEAM There, Done That episode with Björn Gustafsson (OTP team since 1996) tracing the BEAM’s origins through three competing VMs - JAM, Robert Virding’s V, and Bogdan’s original BEAM.
The most counterintuitive part: native-compiled Erlang showed massive sequential speedups in isolation, but once concurrency entered the picture, the real-world gain shrank to about 2x, because message passing was already implemented in C regardless of compilation target.
Also covered: the BEAM Validator, built after a compiler bug caused weeks of debugging pain, and the BEAM loader - Björn’s own invention, still running in production decades later.

Where Next?

Popular in Podcasts Top

wolf4earth
Louis Pilfold is the creator of the Gleam programming language. He explains what Gleam is and tells us where it came from. He then dives...
New
brainlid
Episode 309 of Thinking Elixir. This is it. The final episode of Thinking Elixir after six incredible years of weekly episodes! We send t...
New
brainlid
Episode 161 of Thinking Elixir. Language Servers underpin the language specific support we rely on in modern code editors. Lately, there ...
New
brainlid
Episode 132 of Thinking Elixir. LiveView isn’t always the right answer. Chris Nelson created LiveState to enable embedding custom HTML co...
New
brainlid
Episode 160 of Thinking Elixir. After experience with a LiveView “anti-pattern”, Andy Glassman developed an “Async Pattern” for loading d...
New
brainlid
Day 1 and 2 of Livebook’s first launch week announcements, a new JsonSchema compiler named Exonerate, Ecto 3.10.0 brings changeset improv...
New
brainlid
In episode 56 of Thinking Elixir, Kurt Mackey, founder at Fly.io talks about what makes the Fly platform unique and why hosting Elixir ap...
New
brainlid
In episode 75 of Thinking Elixir, we talk with Dave Lucia about Simplebet’s use of RabbitMQ and Commanded for solving unique real-time pr...
New
thiagomajesk
I saw this podcast episode on my Twitter timeline today and wanted to share it with you. I found a lot of valuable lessons packed in a 27...
New
brainlid
In episode 69 of Thinking Elixir, we talk with Dominic Letz about running Elixir on an Android phone in an APK which hosts a LiveView app...
New

Other popular topics Top

gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
johnnyicon
Hi all, I’ve just started learning Elixir and Phoenix Framework, so please pardon my n00bness at this stage. I’m trying to use Postgres...
New
aesmail
Hello guys, I have finally made it. I created an admin interface for a framework. It’s been on my todo list for years and with the curre...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
AstonJ
Please see the new poll here: Which code editor or IDE do you use? (Poll) (2022 Edition) It’s been a while since we first asked this, I...
208 31307 143
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 52774 488
New
joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 records...
New
Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3271 127536 1222
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New

We're in Beta

About us Mission Statement