The Hare programming language
lol my other post got flagged, so let me reiterate perhaps in a less inflammatory way.<p>It is <i>disappointing</i> to see that "trust the programmer" is a design goal. Programmers can not be trusted with manual memory management. We have decades of proof, billions and billions of dollars of bug fixes and mitigation investments, real world damages, etc.<p>Building a language like this and saying you hope it will be the foundation for new operating systems is... depressing. It's setting us up for another century of industry failure - buggy software that makes users less safe.<p>It's not to say that memory unsafe languages have <i>no</i> place. Toy programs, or programs not exposed at all, are fine. But that's clearly not the case here - the stated use cases are things like the OS, "networking software", etc. All of the places where C has caused incredible harm.<p>edit: It would be wrong not to note that Hare does consider memory safety. <a href="https://harelang.org/blog/2021-02-09-hare-advances-on-c/" rel="nofollow">https://harelang.org/blog/2021-02-09-hare-advances-on-c/</a><p>There are clearly wins here, no question in my mind that a world where spatial memory safety is the default is a better world than today. It doesn't change my view overall, however, that for the use cases defined that the bar needs to be higher.<p>I am also compelled to say something nice about the language. Most apparent is that it looks very approachable - I have to wonder what the '!' means (I can guess), but otherwise it looks very readable. I also like the explicit nature, that's my preference for programs as well as I find it's much more readable.<p>I think "simplicity" can be a tricky goal, but I like seeing languages call it out as one - I'm very curious to see over the next few decades how "simple" plays out.