The article provides ancillary hyperlinks to nearly every topic mentioned, but fails to link the actual video of Kernighan speaking. Here it is: https://www.youtube.com/watch?v=WEb_YL1K1Qg
In reality the subject of the talk is Kernighan’s perspective of the history of Unix at Bell Labs. The questions covered in the article are the least interesting part, and make up about six minutes at the very end—a small fraction not just of the 70-minute video, but even of the 30-minute Q&A session.
In short, the headline and article are disappointing clickbait, but the video itself is worth watching for Kernighan’s relating of history and his theories about what confluence of factors made Unix successful (collegial environment, good management, overall mission…).
Another worthwhile video from the same conference (in a different year) is Kernighan’s interview of Ken Thompson: https://www.youtube.com/watch?v=EY6q5dv_B-o&pp=ygUSdmNmIGVhc...
Probably hasn't heard of zig either, but I'd sure like to know what he thinks about it.
seems like the since Kernighan didn't say anything good about Rust, folks here are quick to declare that he didn't say anything, and that Kernighan's opinion on a programming language he tried and didn't like is "uninformed" LOL
here is what he said, which i got from the writeup at this newstack.io article, which I had found via the discussion at Slashdot https://developers.slashdot.org/story/25/08/30/044226/what-h...
Rust Replacing C?
It was a moment for the ages. “Do you think there’s any sort of merit to Rust replacing C?” one audience member asked, a frequent topic on TNS.
“Or is this just a huge hype bubble that’s waiting to die down?”
In a world that’s been earnestly transitioning for years to more memory-safe languages, the answer from a long-time booster of C — for over half a century — promised to be nothing short of iconic.
“Ohhh, Rust,” Kernigham said, to audience laughter.
‘”I have written only one Rust program, so you should take all of this with a giant grain of salt,” he said. “And I found it a — pain… I just couldn’t grok the mechanisms that were required to do memory safety, in a program where memory wasn’t even an issue!”
Yet his biggest complaint about Rust seemed to be its performance — an especially damning complaint from a man whose early career started on a 16-bit PDP 11/20.
Digital_PDP11-20 front panel - IMG_1498_cropped - Creative Commons via Wikipedia - author Rama and Musee Bolo
Speaking of Rust, Kernighan said “The support mechanism that went with it — this notion of crates and barrels and things like that — was just incomprehensibly big and slow.”
“And the compiler was slow, the code that came out was slow…”
All in all, Kernighan had had a bad experience. “When I tried to figure out what was going on, the language had changed since the last time somebody had posted a description! And so it took days to write a program which in other languages would take maybe five minutes…”
It was his one and only experience with the language, so Kernighan acknowledged that when it comes to Rust “I’m probably unduly cynical.
“But I’m — I don’t think it’s gonna replace C right away, anyway.”
saved you a click: he doesn’t have any experience or knowledge of any of these things, except rust where he has coded one program and didn’t like it
> "In 2022, Kernighan stated that he was actively working on improvements to the AWK programming language" [1]
My knowledge of AWK is a bit rusty but I don't think thinking in AWK is compatible with thinking in Rust.
It's understandable but unfortunate that he had so little to say about them. We could really use the wisdom of true old timers in these matters.
I actually found it really reassuring and a little enlightening that he had so little to say about those technologies. I find it very easy to get sucked into a technology vortex (especially on Hacker News), where the imposter syndrome creeps in and you feel like a failure for not knowing some trendy technology that “everyone knows, duh!”. The next time I feel like that, I’m going to remind myself that Brian Kernighan doesn’t know Nix, only used Rust once (and didn’t like it) and doesn’t even know what Linux distro he uses. And no one would ever accuse him of being an imposter or a failure!
Don't feel too reassured, he is 83 years old.
> When I tried to figure out what was going on, the language had changed since the last time somebody had posted a description! And so it took days to write a program which in other languages would take maybe five minutes
That rings a bell. Rust will be much better if it will stick to a stable ABI. We have enough CADT. You found the holy language grail ? Just not deprecate the old stuff.
A little disappointed that his answers to "What are you opinions on Rust/Nix/HolyC" were mostly "I don't know about that project"
What? But he said this on Rust:
> ‘”I have written only one Rust program, so you should take all of this with a giant grain of salt,” he said. “And I found it a — pain… I just couldn’t grok the mechanisms that were required to do memory safety, in a program where memory wasn’t even an issue!”
Also that Rust is slow. That is not nothing.
He spent one day on a project at some point.. I spent one week on a project when it was new and I wouldn't judge it today using that week.
Eh, it's not a particularly informed opinion, it's his experience from a brief stint with it where it doesn't really sound like he got enough to grips with it to make much of a judgement.
It's like if I took my brief experiences writing C in uni and summarised it was "it's a pain getting all the different files to compile, and I couldn't work out how to import any useful dependencies" - it's not necessarily a _wrong_ opinion, but clearly it's not a useful one. I just don't have enough experience with C to be able to give you a meaningful opinion on it. It sounds like Kernighan is in a similar boat with Rust.
I learnt pointers in C by adding stars until it compiled and then adding ampersands until it stopped segfaulting!
That something is difficult to get up to speed with is a useful criticism.
That's true, although it's often limited in applicability. The amount of time it takes us to learn something often depends on what we already know and what analogies and comparisons we have. I can imagine Kernighan has worked with very few languages that come with their own package manager like Cargo, and so using Cargo feels very alien and slow to him. But for someone coming from a language like Java or Python, a language-specific package manager might seem really obvious and intuitive.
Also some of his comments sound surprising, like there's more context that he didn't communicate or wasn't aware of. For example, Rust code typically performs as quickly as C code (sometimes faster, sometimes slower, depending on various details, but typically they are very similar). But his impression of Rust was that the resulting code was slow, which maybe suggests he was writing quite strange code to begin with, or that he didn't know how to get Rust to compile in release mode or something like that. My hunch is that he was trying out Rust, but also wasn't especially invested in learning it (which is fair enough!) and so maybe missed some stuff that would seem obvious to other new users. Like I said, I did much the same in university when learning C, and as a result simply don't have an informed opinion there.
In the end, the guy has written one program and was completely up front about how that does not make him an expert either in how great Rust is, or how terrible it is. Which is a sensible approach to take.