Hare is a systems programming language designed to be simple, stable, and robust. Hare uses a static type system, manual memory management, and a minimal runtime. It is well-suited to writing operating systems, system tools, compilers, networking software, and other low-level, high performance tasks.
The language itself seems pretty heavily inspired by rust. On that note, why in the hell wouldn’t they use ownership for memory management?
Funny you mention Rust - one of Hares lead devs (and I believe the original creator), Drew DeVault, has been pretty vocal about his dislike for Rust, especially in the low-level and Linux kernel world. Here’s an article by him about the subject:
https://drewdevault.com/2022/10/03/Does-Rust-belong-in-Linux.html
IIRC, Hare has more of a “trust the programmer” approach to things such as memory management. As a programmer who who trusts no one and especially not myself, I don’t think Hare is for me (and i disagree wit a lot of Drews points.) But that’s just my two cents. The language itself seems pretty neat still, but I think it’s got very different design goals
deleted by creator
I suppose I can respect that opinion on memory management, but also disagree that we should always trust the programmer. I was mostly commenting on the syntax, if it weren’t for the fact that I was on the website for Hare I would have thought it was Rust.
It’s got a lot of good ideas from what I saw in the quick guide, but I feel like lifetimes are the next step for memory management in general. If they really want manual memory management to be default, they could continue to flip Rust and make a
safe
attribute for functionsI think the exact opposite to them. Humans are almost always the weakest link. The more you can automate the better.