At least it has something to complain about, unlike Karens.
At least it has something to complain about, unlike Karens.
The fact that it can be used as a scripting language doesn’t mean it’s a scripting language. You could use C++ as a scripting language as well, but it would suck.
C# even supports native compilation nowadays, not just JIT, so it’s definitely not a lowly scripting language.
Anyways you’ve got options. Go may also be one of them if you want GC, I forgot to mention it.
I’ve found working with Rust and Bevy to be quite pleasant. If you’re used to working with ECS, I suggest you at least give it a go.
Rust is as functional as C++ 20 with ranges and views is, which is to say it isn’t. Not sure where you got that impression from, but while it does borrow some ideas from functional languages, it’s still very much a procedural one.
Zig doesn’t have headers, nor inheritance. Again, not sure where you got that from, but Zig is basically a modern C, so there’s no OOP anywhere, let alone multiple inheritance.
As for what to use, I think they’re both viable alternatives. I lean more towards Rust, but that’s just due to familiarity. Odin also looks like a viable option, if you don’t mind a smaller ecosystem.
If you want a garbage collected language, then I’d go for C#. Despite its historic reputation as a Windows only language, it’s been cross platform and open source for roughly a decade at this point. I find it great to work with.
People dislike JS because it’s packed full of moronic footguns and technical debt. The “standard library” is full of baffling decisions and, much like the language, rarely does what you expect. Even its creator agrees it’s a terrible language and should have been replaced by now.
TypeScript is better, but at the end of the day it’s just an illusion. Add an any
anywhere, which will happen, and you’re back to square one. It also still inherits some of the weirdness of JS, because it is just JS with fake types bolted on. Plus, the amount of work one has to do to create a proper library with TypeScript support completely undermines the few advantage of JavaScript. Might as well use a real statically typed language at that point, at least you’d be sure your types are actually enforced.
Also, the whole web ecosystem is ass.
The hoops one has to jump through nowadays to do web development are absolutely batshit crazy. And no, having a create-whatever
that sets things up for you is not a real solution.
People should learn to separate technically impressive projects from the people running them. I’m not going to contribute or financially support the project, but I’m not going to stop using Hyprland because of its creator’s views and conduct. With that said, this stuff certainly doesn’t spark enthusiasm…
I really wanna know where you get your language info and examples from because nearly every single one you wrote in your comments is just wrong.
Program state in Rust isn’t immutable.
datastruct.nextState()
is not only possible, but perfectly reasonable, it’s exactly how iterators are implemented.