Skip to content
HHackerTube.videoSurprise me

Rust NYC: Jon Gjengset - Demystifying unsafe code

Rust NYC: Jon Gjengset - Demystifying unsafe code on HackerTube: recommended by 2 Hacker News commenters across 2 separate months, 2020–2024.

Rust Programming Language

talk · intermediate · evergreen

Open on YouTube

Jon Gjengset's Rust NYC talk explaining what `unsafe` in Rust actually means, why it is dangerous, and why it is sometimes necessary. He works through the Rustonomicon to separate fair concerns from overblown ones.

Why Hacker News recommends it

HN recommends it as the best calm explanation of unsafe Rust, from a speaker commenters trust on the topic.

people recommended it
2
separate months
2
strong recommendations
0
discussed on HN
2020–2024
“There's a great new talk by on Gjengset on youtube that tackles just this question”
— Sammi, Apr 2020, in “How to speed up the Rust compiler in 2020”

What HN commenters said

3 Hacker News comments link this video. Each one links back to its thread.

saghmDec 2024Recommends

While I might agree that it's easy if you use a reference counter, this is not going to be as performant as the typical linked list written in C, which is why the standard library uses unsafe for its implementation of stuff like this. If it were "easy" to just write correct `unsafe`, then it would be easy to do it in C as well. Note that the converse to this isn't necessarily true! People I trust way more to write unsafe Rust code than me than me have argued that unsafe Rust can be harder than writing C in some ways due to having to uphold certain invariants that don't come up in C. While there are a number of blog posts on the topic that anyone interested can probably find fairly easily by googling "unsafe Rust harder than C", I'll break my usual rule of strongly preferring articles to video content to link a talk from youtube because the speaker is one of those people I mention who I'd trust more than me to write unsafe code and I remember seeing him give this talk at the meetup: ▶ this video

in “Compiling C to Safe Rust, Formalized” · View on HN

SammiApr 2020Recommends

There's a great new talk by on Gjengset on youtube that tackles just this question: Rust NYC: Jon Gjengset - Demystifying unsafe code ▶ this video

in “How to speed up the Rust compiler in 2020” · View on HN

ibraheemdevMay 2021Cites it

The rustnomicon is a very good resource. It's less of "the unsafe book" and more "the advanced book", covering lower-level details and advanced concepts that aren't touch on by the book. One gripe I have is that it kind of pushes the idea that unsafe is bad and evil, which is not true at all: > The Dark Arts of Unsafe Rust > THE KNOWLEDGE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF UNLEASHING INDESCRIBABLE HORRORS THAT SHATTER YOUR PSYCHE AND SET YOUR MIND ADRIFT IN THE UNKNOWABLY INFINITE COSMOS. I know it's a joke, and I laughed when I first read it. Unsafe is dangerous and requires care, but unsafe == evil is definitely not true. Jon Gjengset said it well in "Demystifying Unsafe Code" [0]: > One thing I keep observing about the Rust community is how we're all like allergic to unsafe code or we think that unsafe code is is totally fine and not nothing to worry about, and I wanted to take a little bit of time to talk about what unsafe is because I think a lot of where the communities lack of alignment on this particular topic comes from a fact that unsafe is a bit of a mystery to many of us Learning about unsafe is useful, and at time necessary, it's not inherently evil, nor should it be used too freely. [0]: ▶ this video

in “The Rustonomicon” · View on HN

Topics & tags

C, C++, Rust, Go & systems languagesSecurity & hackingrustunsaferustonomiconmemory safetyjon gjengset