
About this episode
The recent announcement of Rustler Precompiled prompted a lot of interest and questions. We talk with Philip Sampaio to understand what he created and what problem it helps solve. The project helps lower the bar for using Rust libraries for NIFs in Elixir making it possible to see more libraries using Rustler in the future. He explains what prompted the work initially and how projects can benefit from it. We discuss what it means for internal company projects and especially for libraries. He explains how the project addresses the many architecture and platform combinations too. We end with learning about his sample CI project that shows us how to set up our own CI systems to use it.
Show Notes online - http://podcast.thinkingelixir.com/95
Elixir Community News
- https://github.com/phoenixframework/phoenix/pull/4742 – Phoenix presence client
- https://twitter.com/elixirphoenix/status/1511393478873427982 – Twitter thread discussing the Phoenix presence client
- https://hexdocs.pm/phoenix_live_view/changelog.html#0-17-8-2022-04-06 – LiveView 0.17.8 released. Includes the HEEx template formatter
- https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.HTMLFormatter.html – Docs on how to set it up
- Issues discussing VS Code problems
- https://github.com/elixir-lsp/vscode-elixir-ls/issues/242
- https://github.com/elixir-lsp/vscode-elixir-ls/issues/241
- https://github.com/DockYard/flame_on – flame_on library updated
- https://dockyard.com/blog/2022/02/22/profiling-elixir-applications-with-flame-graphs-and-flame-on – Original flame_on announcement post for more info
- https://twitter.com/sorentwo/status/1513630468490645509 – Oban adds “inline mode” to make testing more straightforward
- https://www.mitchellhanberg.com/how-eex-turns-your-template-into-html/ – Mitchell Hanberg wrote an article about how EEx works
- https://podcast.thinkingelixir.com/92 – Previous interview with Mitchell Hanberg
- https://exercism.org/tracks/elixir/exercises/take-a-number-deluxe – Exercism.io GenServer learning exercise was added.
- https://twitter.com/atyborska93/status/1513807461043552256 – Angelika shares about the Exercism.io update
- https://twitter.com/whatyouhide/status/1512100896653590535 – Andrea Leopardi is working at Apple now on their Environment team.
- https://www.apple.com/environment/ – More about the Apple Environment team
- https://www.youtube.com/watch?v=R7t7zca8SyM – “Elixir in 100 seconds” video
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]
Discussion Resources
- https://dashbit.co/blog/rustler-precompiled
- https://twitter.com/philipsampaio/status/1503809314489831441
- https://github.com/philss/rustler_precompiled
- https://github.com/philss/rustler_precompilation_example
- https://github.com/philss/floki
- https://github.com/rusterlium/rustler
- https://github.com/servo/html5ever
- https://github.com/elixir-nx/nx
- https://hex.pm/packages?search=depends%3Ahexpm%3Arustler&sort=total_downloads – Current Hex packages using rustler
- https://github.com/elixir-nx/nx/tree/main/nx#readme
- https://elixir-nx.github.io/explorer/Explorer.DataFrame.html
- https://www.pola.rs/
- https://github.com/discord/sorted_set_nif
- https://ziglang.org/
- https://github.com/ityonemo/zigler
- https://github.com/philss/rustler_precompiled/blob/main/PRECOMPILATION_GUIDE.md
- https://github.com/philss/rustler_precompilation_example
Guest Information
- https://twitter.com/philipsampaio – on Twitter
- https://github.com/philss/ – on Github
- https://dashbit.co/blog – Dashbit blog where he writes
- https://phils.dev – Personal blog
Find us online
- Message the show - @ThinkingElixir
- Email the show - [email protected]
- Mark Ericksen - @brainlid
- David Bernheisel - @bernheisel
- Cade Ward - @cadebward
Get every episode summarized
Each time Thinking Elixir Podcast publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from Thinking Elixir Podcast

299: Don't Paste That Into Your Terminal
Thinking Elixir Podcast

298: Hex Gets a Glow Up
Thinking Elixir Podcast

297: JavaScript Joins the BEAM?
Thinking Elixir Podcast

296: OpenAI Chose Elixir and A VM Inside a VMV
Thinking Elixir Podcast