Simon Peyton Jones
π€ SpeakerAppearances Over Time
Podcast Appearances
If we rewrote all of our software infrastructure in Rust, things would be way, way better.
I'm not actually even sure whether Rust has array bounds checks built in, but it must have the ability to promise that you're not indexing out.
I don't quite know.
But if you compile your code with that switched on, you're in a way better situation.
Way better.
So, yes, this is not just functional programming, but you did ask about why I thought C was an insecure, unsafe language.
Yes.
So C, I mean, Rust has moved along the axis from useful but very unsafe to stay useful and become safer.
Now Haskell started life as being very safe, but useless.
So it's worth just, you know, rehearsing that because in the first version of Haskell, there was no IO.
The only thing, a Haskell program was a function of type string to string.
It's functional programming after all.
It could do an IO.
All it could do was take a string and produce a string.
So obviously that's not very useful.
It's a little bit more useful.
A language that is very, very safe and completely useless is Noob.
that does nothing ever.
Very safe, but very useless.
Haskell was a bit better, right?