It is so weird when people idolize programming languages. They are all flawed and they all encourage some bad design patterns. Just chill and pick yours.
Yeah, but that makes it sound like they're all equal, and there hasn't been any progression, which is untrue. You're either insane or a historical reenactor if you write something new in COBOL.
I think Rust is genuinely a huge leap forwards compared to C/C++. Maybe one day it will be shitty and obsolete, and at the very least it will become a boring standard option, but for now...
I now want a community led historical reenactment of loose tie wearing software devs in the 60s where they are just chain smoking and banging out COBOL or Fortran punch cards
C++ when it was new was exactly like this. Rust still hasn't had 30 years of legacy, all these Rust prophets will shit on it's name in 15 years when they have to maintain huge codebases with it
Besides, C++ is very likely to adopt memory safety
There have been "improvements" but fundamentally in my perspective, these "improvements" could be revealed to be a mistake down the line.
Assembly has produced some insane pieces of software that couldn't be produced like that with anything else.
Maybe types in programming languages are bad because they are kinda misleading as the computer doesn't even give a shit about what is data and what is code.
Maybe big projects are just a bad idea in software development and any kind of dependency management is the wrong way.
I like modern languages, types and libraries are nice to have, but I am not the student of the future but of the past.
I don't think Rust is perfect, but arguably I do "idolize" it, because I genuinely think it's notably better both in design and in practice than every other language I've used. This includes:
C
C++
Java
C#
Kotlin
Scala
Python
Ruby
JavaScript (...I've barely used this, but I doubt my opinion would change on this one)
Perl
Go
Bash (...look, I've had to write actual nontrivial scripts with loops and functions, so yes, Bash is a real language; it just sucks)
Tcl/Tk (if you don't know, don't ask)
CommonLisp (...again, I've barely used this, and I wish I had more experience with this and other Lisps)
In a literal sense, I agree that all (practical) languages "are flawed." And there are things I appreciate about all of the above languages (...except Tcl/Tk), even if I don't "like" the language overall. But I sincerely believe that statements like "all languages are flawed" and "use the best tool for the job" tend to imply that all (modern, mainstream) languages are equally flawed, just in different ways, which is absolutely not true. And in particular, it used to be true that all languages made tradeoffs between a fairly static, global set of binary criteria:
safety/correctness versus "power" (i.e. low-level system control)
safety/correctness versus run-time efficiency (both parallelism and high single-thread performance)
ease-of-use/ease-of-learning versus "power" and runtime-efficiency
implementation simplicity versus feature-richness
build-time versus run-time efficiency
type-safety versus runtime flexibility
Looking at these, it's pretty easy to see where most of the languages in my list above fall on each side of each of these criteria. What's special about Rust is that the core language design prevents a relatively novel set of tradeoffs, allowing it to choose "both" for the first two criteria (though certainly not the latter three; the "ease-of-use" one is debatable) at the expense of higher implementation complexity and a steeper learning curve.
The great thing about this isn't that Rust has "solved" the problem of language tradeoffs. It's that Rust has broadened the space of available tradeoffs. The assumption that safety necessarily comes at a runtime cost was so pervasive prior to Rust that some engineers still believe it. But now, Rust has proven, empirically, that this is not the case! And so my ultimate hope for Rust isn't that it becomes ubiquitous; it's that it inspires even better languages, or at least, more languages that use concepts Rust has brought to the mainstream (such as sum-types) as a means to explore new design tradeoff spaces. (The standard example here is a language with a lightweight garbage-collecting runtime that also has traits, sum-types, and correct-by-default parallelism.)
There are other languages that, based on what I know about them, might inspire the same type of enthusiasm if I were to actually use them more:
Erlang
Gleam
OCaml
Swift
...but, with the exception of Swift, these are all effectively "niche" languages. One notable thing about Rust is that its adoption has actually been rather astounding, by systems language standards. (Note that D and Ada never even got close to Rust's popularity.)
Have you actually ever seen an example of such an annoying rust dev? Cause I haven't, only a ton of people who see rust as their enemy number 1 because of such people. Those who are "annoyed" are way more annoying…
I have made experiences with annoying PHP devs and I don't hate them.
My critic wasn't towards rust devs or any devs of any language but towards idolization of a language instead of studying the nature of those languages the flaws and advantages and use the best tool available or attempting to create a better tool.
Rust the community makes me hate rust, never want anything to do with it, and actively advise people not to use Rust. Your community is so, so important to a programming language, because that's who makes your documentation, your libraries, fills out the discords, IRC, and mailing lists. As a developer, any time you're doing anything but rote boilerplate zombie work, you're interacting with the community. And Rust has a small, but extremely vocal, section of their community that are just absolute shitheads.
Maybe in 5-10 years when the techbros stop riding its' dick and go do something else will Rust recover its reputation, but for now? Absolutely no.
I probably wouldn't describe them as flawed, because the goal wasn't and couldn't ever be perfection, so then everything is flawed, but then is it really a flaw? It sounds like more of an issue of what's useful in what type of situation.
How can a rewrite in a completely different language violate this license? There should also be a clause "Once you looked at the source code you must not write anything with similar functionality .... in any programming language"
Leaked Windows code made Wine and ReactOS devs anxious, since MS could sue over it. On the other hand, I've looked up the keycodes from the Linux kernel for X11 (it's literally just PS/2 with the unused codes being used in place of the E0 keys), and they haven't yet came after us.
It made them nervous because someone might put parts of the original source into Wine. You can't do that in a rewrite in a different language, it doesn't even make sense. The thing the people in this screenshot are gloating about isn't even relevant to this license.
Speaking as an annoying Rust user, you're being bigoted. I'm annoying, but the vast majority of Rust users are normal people who you wouldn't even know are using Rust.
Don't lump all the others in with me, they don't deserve that.
Same. I keep thinking back to my time TAing for an intro programming course and getting students who just add random braces until their code compiles. That's me right now with Rust pointers.
ironic that winamp is was built on open formats and widespread IP theft (music ripped and shared)..... but they're strangely prickly when it comes to their code.
No distribution, but he didn't say no distributing a language parser to change it into rust and then microcompile a new executable on the spot.
Tell me you are having a midlife crisis over not wanting to change over from the programming language you grew up mastering without telling me you are having a midlife crisis over not wanting to change over from the programming language you grew up mastering.
What is this abi and standard calling methods you speak off? Are you a rust-non-believer or some shit! Rewrite it all in rust, no questions asked!
( i too like the ideas of rust, but without a decent abi or not constantly changing interface, its useless to me. I dont want to rebuild all code, including libraries every time i update 1 library in my application )