10 ms·
Rust is just a tool
- zenon_paradox 8mo ago[flagged]
- shrubble 8mo agoI’m glad that Rust users are willing to accept that other approaches to safety like Ada are also interesting or effective. In the past I had the impression that some thought that Rust was the first programming language to ever have the concept.
- pjmlp 8mo agoNow we just need the Zig ones acknowledging Object Pascal, Modula-2, Ada,.... as well :)
- pjmlp 8mo agoAll technology is just a tool, unfortunately it turns into religion like behaviours, because it defines with whom we work, what projects we can work on, what CVs get through HR and which ones don't,....
- ozim 8mo agoThe horror of picking tech working in it 10 or 15 years and then it suddenly becoming obsolete or irrelevant. Is something a lot of people can relate to.
- josephg 8mo agoWe're a new industry. So long as we keep iterating on our tools, this will continue to happen. Obsolescence is - in this case - an indicator of progress.
- ozim 8mo agoI don’t subscribe to the notion that we are „new industry”. It already is well past 80 years and we can easily add computation jobs and record keeping that were there before those were digitalized. „Centuries” of experience in other fields for me feels like it is exactly the case of that guy who has 20 years of experience in his CV in software development but can’t write fizz buzz if you ask for it. There is so much knowledge lost and new guys don’t study centuries of history to build a house or become a sales person. You might study battles from century ago but they are mostly irrelevant.
- k33n 8mo agoIt’s useful to align groups on underlying philosophies about problem solving and what tooling we will use. The alternative is way slower and less effective. “Just use whatever language and frameworks you want and solve the problem in a vacuum” would be a nightmare for any team trying to ship.
- lioeters 8mo ago> religion like behaviours That phrasing makes me imagine a cultural anthropologist studying the behavior of programmers in the wild, their tool use, rituals, magical worldviews like object-orientation. There's that classic paper about how a language is a "tool for thinking", that it both expands and limits how and what a person can think. It makes sense that it shares characteristics with religion, a conceptual system of interfacing with the world.
- mold_aid 8mo ago>That phrasing makes me imagine a cultural anthropologist studying the behavior of programmers in the wild Google scholar is your friend here
- pjmlp 8mo agoWell, since you asked for it, :) https://youtu.be/ocwnns57cYQ?si=GLb9kNEcAQkaM0up https://youtu.be/ocwnns57cYQ?si=GLb9kNEcAQkaM0up
- lioeters 8mo agoLiterally laughed out loud at the very first sentence spoken with that voice. Haha.
- josephg 8mo ago> Programming Rust does not mean I have to: buy into their marketing hype > give the same smug lectures about "safety" I'm often confused reading articles like this, which take for granted the existence of some "rust evangelism strike force" which goes after people on the internet for not liking rust enough. The way people talk, it sounds like there's some insanely effective marketing campaign going on to promote rust everywhere. But I haven't seen it. Certainly not any more than any other technology people get excited about for awhile, like Go. Or docker when that launched. Where are these comments? Can anyone give some actual links to these sort of comments people say online, which don't get immediately downvoted? The way people talk, these comments must be made in such large volumes that it seems very odd I don't notice them?
- maxbond 8mo agoIt's way rarer on Hacker News than people alleging an omnipresent Rust Evangelism Task Force is constantly imposing itself on people. I have seen "overly enthusiastic" comments about Rust, but I can count them on one hand. I'm not going to link them because I don't want to dogpile ob people. Note that I read many/most of the Rust threads that make it to the front page. But I have seen thousands of comments complaining about these supposed evangelists (no exaggeration). Less often and less reliably in the past few years, the meme is petering out. But there's absolutely no comparison of the relative frequency. People complain bitterly about Rust on this forum consistently, actual Rust zealots appear very rarely. It is simultaneously true that Rust is "just a tool" and that this is a significant fact, and that the people complaining about Rust are the bigger problem in the day to day discourse in Rust related threads on this platform and in the present day.
- dcminter 8mo agoYeah, I keep hearing about this toxic community from people who won't blink twice to use decade-out-of-date critiques of Java :)
- procaryote 8mo agocheck further down this discussion for immediately downvoted comments https://news.ycombinator.com/item?id=47191837 https://news.ycombinator.com/item?id=47191837 https://news.ycombinator.com/item?id=47191619 https://news.ycombinator.com/item?id=47191619 Post anything negative about rust, or anything about a severe bug in some non-rust code, for examples of your own I have nothing against rust, although the learning curve is too steep and development in rust is too slow to be a practical general purpose language for a regular company. The culture around dependencies also means you pay for your memory safety by increased supply chain risk. Golang or Java gets you memory safety, faster compilation, easy hiring and have better standard libraries
- lispisok 8mo agoRust is cool but there is way too much dogma around its memory safety and static typing in general being a panacea. Most errors are not type errors. Two days after Cloudfare's little Rust hiccup that took the internet down for a day I saw people posting about Rust "if it compiles it runs".
- antonvs 8mo ago> Most errors are not type errors. If you follow good strong typing principles, you can ensure that most errors are type errors. Yaron Minsky’s phrase, “Make illegal states unrepresentable”, captures this. But it doesn’t happen by accident just because you’re using a strongly typed language. Also, if Cloudflare had run the standard Clippy linter on their Rust code, and taken the results seriously, it would have prevented the issue you referenced. Static checks don’t help if you ignore them.
- JuniperMesos 8mo agoI actually don't think this is true. I do think that most programming errors are type errors, in the broader sense of one part of a system making one set of assumptions about the properties of some data, that aren't shared by another part of the system; and that would've been caught automatically by sufficiently sophisticated static correctness checking. I do not think that Rust has a maximally sophisticated type system (nor is it trying to), and while this is reasonable for Rust as a project to decide, I do expect that there will be languages in the future that do more complex things with type systems that might supplant Rust in some domains. The Cloudflare incident was caused by a confluence of factors, of which code written in Rust was only one. I actually think that Rust code worked reasonably well given the other parts of the system that failed - a developer used unwrap() to immediately crash instead of handling an error condition they thought would never happen; when that error condition did happen the Rust program crashed immediately exactly as expected; and if Cloudflare decided that they wanted to ban not handling an error like this in their codebase, it's a pretty easy thing to lint for with automatic tooling.
- pjmlp 8mo agoIf it helps finally acknowledging basic stuff like bounds checking matters, great, this from a guy that rather use system languages with automatic resource management. "A consequence of this principle is that every occurrence of every subscript of every subscripted variable was on every occasion checked at run time against both the upper and the lower declared bounds of the array. Many years later we asked our customers whether they wished us to provide an option to switch off these checks in the interests of efficiency on production runs. Unanimously, they urged us not to they already knew how frequently subscript errors occur on production runs where failure to detect them could be disastrous. I note with fear and horror that even in 1980 language designers and users have not learned this lesson. In any respectable branch of engineering, failure to observe such elementary precautions would have long been against the law." -- C.A.R Hoare's "The 1980 ACM Turing Award Lecture" From 1980! C++26 will finally have hardening on the standard library, something that I could already enjoy in 1990's with Turbo Vision, OWL, MFC, VCL, but was too much to ask for on the standard library apparently, even if compilers kept having each own their approach. It took governments and companies to start mapping CVEs to money spent fixing them, to finally acknowledge something had to change. Meanwhile on C land, business as usual regarding Hoare's quote.
- rvz 8mo agoIt's just a tool. But to some people, Rust is more like a religion than a tool and they let it define them to the point even the language maintainers disavow them. At any point, if you provide any conterpoints or fair criticism towards the language objectively, just expect lots of fans to remind you that it is the best programming language ever created and yours is "unsafe" by default.
- dijit 8mo agoI like Rust, though I’m not zealous about it. Sometimes when you have a really good tool, you want to share it. This was the case with Linux for many people over many years. FWIW I agree that the community has some frustrating elements, and that its a lot of dogma in comments, though I actually think that’s a fringe element.
- ozim 8mo agoSounds like the point of the article is that you can just use the language and keep counterpoints to yourself.
- deleted 8mo ago[deleted]
- swiftcoder 8mo ago> At any point, if you provide any conterpoints or fair criticism towards the language objectively, just expect lots of fans to remind you that it is the best programming language ever created and yours is "unsafe" by default. This is mostly just a disagreement about what the word "unsafe" means in this context? "safe" and "unsafe" in the sense Rust uses them aren't a moral judgment about a language, it's a specific (and limited in scope) feature of the language, where memory safety is enforced by the compiler.
- furryrain 8mo ago> like every popular crate buy into their marketing hype > follow community "best practices" Yea, I get smug judgement from Rust zealots for not picking the in vogue crates. I get a lot of help too though. People are passionate about it. That has good and bad outcomes.
- phplovesong 8mo agoRust has nothing new (even the lifetime stuff is copied) really. It just marketed itself really well. It got a huge number of migrants from JS/TS ecosystem, and python, and some from the C(+*) ecosystems. Its a good language dont get me wrong, but also a huge pita to work with.
- zozbot234 8mo ago> Rust has nothing new (even the lifetime stuff is copied) really. Rust has nothing new by academic standards, and this is an explicit goal of the project. (And that's why it has yet to support e.g. Haskell-like higher-kinded types; or dependent types for compile-time programming: the interaction with its low-level featureset is very much an open question.) It's incredibly novel as a production language, of course.
- pjerem 8mo agoIt has nothing new but they did a good job at cherry picking what what nice in other languages. Which makes it an interesting language to learn actually. I even feel like Rust can even be a superb first language to learn for a new programmer : that’s a journey for sure but it would expose you to most of the modern programming concepts.
- AlotOfReading 8mo agoSaying it has nothing new seems like an uncharitable take. Yes, it has influences (that rust docs dedicate a page to [0]), but PL theory has such a rich body of literature that you can make a similar claim about virtually any language. It's the whole package that matters, and I don't think there's anything "rust but earlier" to point to there. Certainly isn't Ada. [0] https://doc.rust-lang.org/reference/influences.html https://doc.rust-lang.org/reference/influences.html
- dcminter 8mo ago> [Rust is] a good language [...] but also a huge pita to work with This is practically the elevator pitch of the language :) and I speak as one who likes it a lot!
- zamalek 8mo agoRust happens to be an extremely good tool. There are definitely situations where it absolutely sucks. e.g. Zed is a heroic effort, but look at the code and you'll see that we still haven't figured out how to do Rust UIs. We may disagree on the premise that humans are generally incapable of correct and safe manual memory management, but that's a degree of distrust I hold for myself. You may have never written a memory bug in your life, but I have, and that renders me completely incompetent. If a project in an unsafe language has ever had a memory bug (I'm looking at you, Bun), the maintainers objectively have a track record of not being capable of manual memory management. You wouldn't put a person who has a track record of crashing busses at the wheel of a school bus. And Rust isn't the only memory-safe language. You can turn to Java, Go, C#, Type/JavaScript, and whole bunch of others. Rust just so happens to have ocaml tendencies and other things that make it a joy to read and write, so that's definitely preference on my part. One of these days I'll learn ocaml and possibly drop Rust :)
- echelon 8mo ago> Zed is a heroic effort, but look at the code and you'll see that we still haven't figured out how to do Rust UIs. Only a handful of apps and frameworks have figured this out. Most of the world moved onto HTML+Javascript plus Electron. Or mobile UI. Who is using native UI in 2026? GTK and QT don't feel great. I'm glad Zed is trying. We need more efforts.
- giancarlostoro 8mo agoI've been experimenting (thanks to Claude Code because it removes the headache drastically for me of Rust nuances, I'm not a Rust expert by any means) with Qt and Rust. I discovered cxx-qt which is maintained by some Qt maintainers, which are all employed at KDAB. I had no idea KDAB or this project existed. It's been very smooth so far. I can honestly say the barrier to building a GUI is very low with Claude, must to the dismay of others, but it beats me building an Electron app. https://github.com/KDAB/cxx-qt https://github.com/KDAB/cxx-qt
- steve1977 8mo ago> Who is using native UI in 2026? Swift. Which is similar to Rust in some ways actually.
- maxbond 8mo ago1000x yes. Rust is not a One True Language, there exists no One True Language. Rust made some improvements over previous languages (many of which were ported over from previous languages that demonstrated the value but weren't break out successes) and serendipitously those improvements added up to something that was really significant and unlocked interesting and useful capabilities. I'm never going back to how my workflows were before I learned Rust (though I still write in other languages everyday). But there will be other languages in the future that will continue to deliver small improvements until one day they result in another phase change. The honeymoon with Rust will be over and it will start feeling more antiquated. C, Python, Java, are just a couple random languages that were/are similarly influential. (C is of course orders of magnitude more influential, the only language more influential is probably COBOL?)
- esperent 8mo ago> But there will be other languages in the future that will continue to deliver small improvements until one day they result in another phase change I agree, and I'm interested to see what it is in the age of LLMs or similar future tools. I suspect a future phase change might be towards disregarding how easy it is for humans to work with the code and instead focus on provability, testing, perhaps combined with token efficiency. Maybe Lean combined with Rust shrunk down to something that is very compiler friendly. Imagine if you could specify what you need in high level language and instead of getting back "vibe code", you get back proven correct code, because that's the only kind of code that will successfully compile.
- echelon 8mo agoIf your LLM can output 10-100x the LOC output, and it's equally good at all languages, and you're not bound to an existing language choice or ecosystem, why not choose Rust? Rust code will be faster, safer, and easier to ameliorate bugs in. Rust seems like the best language to serialize business logic to now that LLMs are so good at it. If the LLM makes a mistake in Javascript or Python, you literally won't know until runtime. With Rust, you'll know immediately and have really good compiler recommendations for fixes. I think Rust is the best LLM language. I am somewhat biased: I've written Rust code for ten years, and I'm having a blast with Claude Code writing it for me instead now. But I've also used so many other tools and languages - enough to say that Rust has some unique advantages here. And also that Claude does a fantastic job emitting Rust. LLMs emitting Python feels like building with clay. LLMs emitting Rust feels like building well-engineered steel skyscrapers.
- burakemir 8mo agoA programming language is a medium to communicate programs to something that can execute them. That isn't exactly the same thing as a tool. A tool in my book is a metaphor for a program that helps achieve some well-defined task. Even if we ignore this difference, we would still want to talk about tool safety. In my experience there is a C++ mob that hates Rust. These are the people who declare statement of facts as ideology. No good faith dialogue is possible. There are also competent C++ programmers who misunderstand or don't know how static checking works. I also witness normal people who are completely surprised by a statement like "C++ is all unsafe" and find that too strong. Using the word "safe" with a technical meaning throws normal people off because, sadly, not everyone who writes code is an academic PL researcher. "Safe", in Rust and much PL research, means "statically checked by the compiler to be free of UB". If you are pedantic, you need to add "... under the assumption that the programmer checked all conditions for the code that is marked `unsafe`" for Rust. That is all there is to it. Scientific definition. C++ in its current form is full of gross design mistakes, many of which could be corrected at the price of breaking backwards compatibility. Mistakes happen, aldo to world leading PL researcher (the ML language and polymorphic references) which is why the field embraced mechanically checked proofs. The difference is the willingness to address mistakes. Academics use "safe" in exactly the meaning the Rust community uses. If you don't understand this, go and educate yourself. Academics need to communicate effectively which leads to technical meanings for everyday words or made up words and jargon. Maybe a statically checked safe low-level language is marketing genius. It is also a technical breakthrough building on decades of academic research, and took a lot of effort. Bjarne and friends chose a different direction. Safety was not a design goal originally but doubling down on this direction means that C++ is not going to improve. These are all facts. Backwards compatibility is a constraint. Constraints don't give anyone license to stop people who don't have those constraints. We don't have to feel any moral obligation to use statically checked languages for programs. But claiming that static checking does not make a difference is ignorant, and attaching value to one's ignorance certainly seems like an indicator for ideology and delusion.
- michaelmure 8mo agoAny recommandation for a quality non-toy rust codebase to study?
- mlvljr 8mo ago[dead]
- maxbond 8mo agoTwo arbitrary picks: https://crates.io/crates/serde https://crates.io/crates/serde https://crates.io/crates/regex https://crates.io/crates/regex Anything covered by Gjengset's "decrusted" series: https://youtube.com/playlist?list=PLqbS7AVVErFirH9armw8yXlE6dacF-A6z https://youtube.com/playlist?list=PLqbS7AVVErFirH9armw8yXlE6... Sort of on the border between toy and not-toy; Gjengset implements a concurrent hash map: https://youtube.com/playlist?list=PLqbS7AVVErFj824-6QgnK_Za1187rNfnl https://youtube.com/playlist?list=PLqbS7AVVErFj824-6QgnK_Za1... [17hr recorded over 3 streams]
- josephg 8mo agoThe rust standard library is excellent. Start more or less anywhere, and click "view source". Or open up the source code files on github. There's often a lot more comments than code, which is kind of annoying. But it really is the best way to learn how a lot of good rust is written. Vec is a good read: https://doc.rust-lang.org/src/alloc/vec/mod.rs.html https://doc.rust-lang.org/src/alloc/vec/mod.rs.html Here's the lovely slice::binary_search_by: https://doc.rust-lang.org/src/core/slice/mod.rs.html#2967-2969 https://doc.rust-lang.org/src/core/slice/mod.rs.html#2967-29...
- anon-3988 8mo agoRust is just a tool. A decent tool that I think can be made better (by removing stuff and stop adding more stuff to the surface syntax). So I am down to criticize Rust. However, I also don't understand how people don't see the usefulness of what Rust put to the mainstream: algebraic data types, sum types, traits, etc. I also get super annoyed when people think Rust is only chosen for "safety". Says frustrating things like "so I can just use unsafe", because no you don't and if you do I would reject your changes immediately. Honestly, in general, I am just annoyed when people don't use the right tool for the right job. And attempts to fix the tool with more bespoke stuff on top it.
- HippoBaro 8mo ago> Says frustrating things like "so I can just use unsafe", because no you don't and if you do I would reject your changes immediately. This is the kind of hostility (which is frankly toxic) that’s become associated with parts of the Rust community, and has fairly or not, driven away many talented people over time.
- deleted 8mo ago[deleted]
- deleted 8mo ago[deleted]
- iknowstuff 8mo agoThere is no hostility on display there lol just an entirely reasonable code quality standard
- aldanor 8mo agoYes. To me personally, Rust and both its restrictions and features (ie no OOP and prevalence of sum types and hence other goodies) makes approaching the implementation of big problems differently; eventually the experience with Rust also changes (to some extent) the way you write and structure the code in other languages. One might argue that Rust is not unique here and this would also apply to languages like ocaml etc - sure, perhaps; but I can't write in any of those languages at work on daily basis since they don't fit performance-wise or for many other reasons.
- qsera 8mo agoRust is boaring! I ll never use Rust for something I build for fun. It will be a shame if new programmers will stay away from C because of all the scaremongering regarding the consequences of not freeing some memory (in some toy, pet project) in their own computers.
- simonask 8mo agoYou seem to believe that Rust prevents memory leaks. It does not, and that's not what "memory safety" means.
- sheept 8mo agoYes, Rust does not guarantee that it'll prevent memory leaks. But the design of the language does make it harder for you (and your collaborators/dependencies) to accidentally leak memory compared to, say, C++.
- WhereIsTheTruth 8mo ago[flagged]
- deleted 8mo ago[deleted]
- up2isomorphism 8mo agoRust is a very very ugly language, this is made worse when it is shamelessly promoted by bunch of persistent people with bad tastes. Also trying to fight runtime behavior with compile time constraints cannot be a universal treatment. Trying to enforce OOP is one of such examples, and it already failed .
- oytis 8mo agoWe need more courageous people like him.
- fmajid 8mo agoOverly enthusiastic Rust evangelists can be annoying, but nowhere as much as C++ or C advocates defensively claiming memory safety isn't a big deal, and they are going to have it in the next version of the language anyway. I find my experience with Erlang has helped with the (considerable) learning curve for Rust, but I still prefer Go for most use-cases.
- wolvesechoes 8mo ago> claiming memory safety isn't a big deal There are contexts where it is, there are contexts where it is not. But suddenly everyone out there is dealing only with those context where it is.
- ysleepy 8mo agoRust does not have the best tooling by far imo. The IDE capabilities are not nearly as advanced as they are for Java for example. Compared to C/C++ or dynamically typed languages, sure. I love that cargo unifies the ecosystem, no quabble over one shitty build tool over another. I feel like the IDE story still has a long way to go.
- pjmlp 8mo agoNot even C/C++, only if vim and emacs are the only experience one has ever had. See Visual C++ (with hot code reloading, incremental linking, AI integration, on the fly analysis), QtCreator, Clion (comparable with VS in many options), C++ Builder (with its RAD capabilities),.... Cargo is great as long as it is only Rust code and there is little need to interop with platform SDKs, then it is build.rs fun.
- g947o 8mo agoJava has over 3 decades of history, during which many IDEs were developed just for Java, and the ecosystem evolved over that long period. Rust is still way too young.
- wolvesechoes 8mo agoIt doesn't have the same kind of high quality tooling, period. People on the internet are not going around saying "look at Rust, such a young language but already has such awesome tooling like cargo, can't wait to see what we are going to have in few years from now". They just simply claim that Rust tooling is superior to anything else. Because only thing they know are CLI-based workflows for cavemen.
- pjmlp 8mo agoSee the hype about TUIs as if Turbo Vision, Clipper and ncurses never happened. Once upon a time that was all many of us could reach for.
- goku12 8mo agoI'm curious about the exact exchange that prompted the author to say this. > refuse to admit there are alternatives to RAII I'm even more curious about this. Can the author or anybody else explain what this means specifically? Can anybody list those alternatives other than GC and RC? PS: Computer Science isn't exactly my primary professional competence.
- cwood-sdf 8mo agoBatching/arenas can get you very far. If you adopt the zig/c object model as “things that have data” most destructors become useless. Resource management also can be accomplished at the batch level (eg you can free a bunch of fd’s all at once with a management layer rather than having each File object implicitly manage its own fd). For memory management, i believe proper use of arenas and batching tends to be faster than each object managing its own memory but idrk tbh. What the author is saying is that you dont have to have raii, you can use approaches like the one i described and they can still be pretty safe if you know what youre doing, but rust’s model basically prevents this if youre using rust idiomatically
- markisus 8mo agoYeah if your program has a natural notion of a "frame" (eg most video games), you can do memory management by simply incrementing an integer (bump allocation). At the end of your frame, you reset the integer to zero. You can't really get any faster than that. An additional benefit of this style of allocation over malloc/free is that you can get a lot of the same type of objects contiguous in memory so that iteration over them is a lot faster because there are fewer cache misses.
- xlii 8mo agoI agree with this (short and sweet) piece. I'm Rust user but the crab-hype turned me off for the long time. Personally I'd prefer writing Haskell but there are sharp edges I can't overlook (like constantly breaking LSP of 11/10 difficulty on producing distributable binaries). I cringe every time I spit out 50 lines of boilerplate just to get C done Rust, but it's best tool I found that's good enough in many scopes.
- alecco 8mo agoRust is an amazing tool that sadly has the most toxic self-righteous community in PL. Like doxxing that kid for daring to post he refactored his pet project from Rust to Go.
- speed_spread 8mo agoEvery community has these assholes. In my experience, the Rust user base is nothing but polite, understanding and pragmatic. There's no smugness, explicit or implied. The Rust lore is just a joke that's getting less funny every day someone takes it seriously.
- wolvesechoes 8mo agoYet, almost every Rust thread here serves as a evidence that your experience doesn't reflect reality.
- speed_spread 8mo agoFrankly, I see _a lot_ more uninformed attacks on Rust than actual Rust evangelism / snobbery. And most of these anti-Rust comments reek of personal insecurities and low-effort trolling. Like saying that Java is slow. It's getting old real quick.
- ch_123 8mo agoI feel like it's far easier to find more zealously anti-Rust people than zealously pro-Rust people - hating Rust has almost turned into a meme.
- gorjusborg 8mo agoThey are people of very similar mentality, with opposing sensibilities. The rest navigate quietly, bobbing in the rippling wakes of their passionate fighting.
- 8mo ago
- randomint64 8mo agoSherlock Holmes liked to say "When you have eliminated the impossible whatever remains, however improbable, must be the truth". The same is true for programming languages. When you have eliminated all the others for their fatal flaws, only Rust remains, so it's not "just a tool", it's the best tool (or less worse, depending on how you like the syntax). You can read more about the technical reasons here: https://kerkour.com/rust-software-engineering-reliability https://kerkour.com/rust-software-engineering-reliability
- qsera 8mo agohah hah hah!
- hu3 8mo agoLuckily software development is not a static crime to be solved. It's an evergreen field to be researched forever. With languages coming and going. ;)
- squirrellous 8mo agoThis is why I get turned off hearing about Rust (and I use it from time to time). You can say Rust is good without saying other languages are bad.
- kshri24 8mo agoMy only gripe with Rust is Rust-Analyzer taking up so much of my system's resources. And I know it is not really fixable which is a bummer.
- BoingBoomTschak 8mo ago"$LANG is just a tool" has never been right. The Sapir–Whorf hypothesis (or the blub lang analogy - and not the smug part - for programmers) is still true to this day. tl;dr: Just a tool, but "we shape our tools and then our tools shape us".
- dcminter 8mo agoWhile these are all reasonable points, there is a distinction between criticising people for using ${lang} (bad) and criticising the language (neutral). Some people get their egoes attached to their choices (for or against Rust). Also there's a time and a place for all criticism. If the conversation is not fundamentally about language choice then it's very irritating to have it brought up.
- ragall 8mo agoEveryone's getting the wrong metaphor. Languages are raw material, not tools.
- jurschreuder 8mo agoI don't think Rust/PHP are all that much more safe than Zig/C++. 80% of memory safety bugs in C++ are just basically "array out of bounds", for which you don't need a memory checker at all just array bounds checks which LLVM has enabled by default for Rust but you can also use it for C++. 70% of vulns in C++ are memory related but only ~10% of those would be caught by borrow checking. Most are already caught by forcing object initialisation and array bounds checking. Only use-after-free is caught by either borrow checking OR OTHER TOOLS like ARM has 4 bits in addresses that can encode if the memory location has not been pulled from under you. So aaaaall this trouble if the borrow checker to have in some cases max 10% fewer vulnos. I'm not going to switch to Rust/PHP just for that little memory safety bonus.
- willx86 8mo agoAs someone who has only used zig a little I've has more core dumps/seg faults than any other language I've ever used. Skill issue? Yes, 100℅, it's definitely due to my lack of skill in the language The only time I've ever made a rust program seg fault is when using nightly macros/"features" and being on stable, leading to rustc crashing with a nice error and then I change to nightly and that was caught at compile time... Skill is a huge factor in safety "70% of vulns are..." Yes, production code written at huge companies by experts... If experts are making those mistakes, that says a lot about it IMO That being said, I'm not a "one language for all", they have their place, embedded rust is hilarious as it's essentially a requirement to have unsafe blocks in your initialisation Anyway rant over
- nesarkvechnep 8mo agoWe've had memory-safe languages for 50 years, don't act like Rust is the first one.
- eviks 8mo ago> and they may prefer different tools to us. > We would do well to accept this. Why is it better to accept harm from bad tools, especially since we are the ones harmed by those preferences?
- MeanEYE 8mo agoGood for systems programming? Perhaps. But to install all the dependencies you need so many crates you literally can install another operating system.
- spwa4 8mo agoNext you're going to say the choice of vim or emacs is just about editing text. BURN THE HERETIC!