Remix.run Logo
MrJohz a day ago

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.

exe34 a day ago | parent | next [-]

I learnt pointers in C by adding stars until it compiled and then adding ampersands until it stopped segfaulting!

im3w1l a day ago | parent | prev [-]

That something is difficult to get up to speed with is a useful criticism.

MrJohz 21 hours ago | parent [-]

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.