ElixirConf 2021 - Isaac Yonemoto - Zig (heart) Elixir
ElixirConf2 HN recommenders · recommended in 2 months, 2021-2025
4K views · 5 years ago · talk · dated
Isaac Yonemoto's ElixirConf 2021 talk on Zigler, a library for writing Elixir NIFs in Zig. He looks at its internals and how it bridges the two languages while keeping the NIFs well behaved on the BEAM.
HN threads on Zig and Elixir link it as the creator's explanation of how Zig NIFs can behave nicely inside the BEAM.
54:14Zig: A programming language designed for robustness, optimality, and clarity – Andrew Kelley
Recurse Center
75K views • 8 years ago
1:11:55ElixirConf 2019 - Day 1 Morning Keynote - Brian Cardarella, Luke Imhoff, Paul Schoenfelder
ElixirConf
8K views • 7 years ago
1:11:42ElixirConf 2023 - José Valim - The foundations of the Elixir type system
ElixirConf
38K views • 3 years ago
53:56Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure
jasonofthel33t
119K views • 13 years ago
59:48The Road to Zig 1.0 - Andrew Kelley
ChariotSolutions
168K views • 7 years ago
38:53ElixirConf 2018 - Docker and OTP Friends or Foes - Daniel Azuma
ElixirConf
16K views • 8 years ago
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
384K views • 7 years ago
1:28:59Clojure for Lisp Programmers Part 1 - Rich Hickey
ClojureTV
25K views • 13 years ago
35:15Solid Ground // Saša Jurić
EMPEX Conference
14K views • 9 years ago
1:00:23[#36] Zig Roadmap 2024 - Andrew Kelley
Zig SHOWTIME
66K views • 2 years ago
42:20Writing a Wayland Compositor in Zig - Isaac Freund
Zig SHOWTIME
26K views • 6 years ago
1:10:16Saša Jurić - Parsing from first principles - WebCamp Zagreb 2019
WebCamp Zagreb
6K views • 6 years ago
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
65K views • 13 years ago
40:15Bringing Types to Elixir by Giuseppe Castagna and Guillaume Duboc | ElixirConf EU 2023
Code Sync
7K views • 3 years ago
1:14:52Effective Programs - 10 Years of Clojure - Rich Hickey
ClojureTV
176K views • 9 years ago
42:382021: Year of the Linux Gaming Desktop - Andrew Kelley
Zig SHOWTIME
15K views • 5 years ago
1:00:58The Next Five Years of ClojureScript - David Nolen
Metosin
19K views • 10 years ago
1:05:51The Functional Programmer's Toolkit - Scott Wlaschin
NDC Conferences
79K views • 7 years ago
1:13:11Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains
JetBrains
979K views • 5 months ago
1:04:45Stanford Seminar - Concatenative Programming: From Ivory to Metal
Stanford Online
14K views • 8 years ago
6 comments from Hacker News
RE: Elixir I have a feeling that the zig's i/o strategy will enable me to bring back the zig-async-dependent yielding nifs in zigler. I'm really hopeful io interface will have a yield() function, that would be even better! ▶ this video
something that I don't understand about the actual API: I maintain the zigler library, and one thing that was useful about the old async "colored-but-not-really" functions was that they implicitly tolerate having internal suspend points (detail: ▶ this video ) -- I'm not sure if having IO be a passed parameter will still let me do that? Can users build their own functions with yield points? And will you be able to jump out of the frame of a function and give control back to the executor, to let it resume later?
Links for anyone curious. > Syntax highlighting here can work correctly, actually. Highlighting shown here in the 2021 ElixirConf talk posted elsewhere in the comments: ▶ this video > I'm not sure why it's not better documented in Zigler Here's the docs for it (though buried in the 'advanced' section) link
There's a series of things that a NIF must do to be a good citizen. Not crashing is a big one, but also not starving the VM by never yielding (in case the NIF is long-running) is important, plus a few secondary things like using the BEAM allocator so that tooling that monitors memory consumption can see resources consumed by the NIF. The creator of Zigler has a talk from ElixirConf 2021 on how he made Zig NIFs behave nicely: ▶ this video
Got it. Thank you for your perspective. I can appreciate that comptime is tricky. Indeed, async zig is hard and annoying (but you're wrong about the function coloring... Here is someone's project where they call an async function alternately from a sync or async context with zero lines of code: ▶ this video Yielding is async and threaded is sync)
Really fascinating to see Zig being used to make Elixir cross platform! Exciting stuff. Here's a direct link to the ElixirConf talk: ▶ this video