3 ms·
Don't hate me for this, but... is 20 years of Rust really new? https://en.wikipedia.org/wiki/Rust_(programming_language) https://en.wikipedia.org/wiki/Rust_(pr
by giancarlostoro 9mo ago
Don't hate me for this, but... is 20 years of Rust really new?
https://en.wikipedia.org/wiki/Rust_(programming_language) https://en.wikipedia.org/wiki/Rust_(programming_language)
I do get what you mean, but Rust has been baking for a decade, finally took off after 10 years of baking, and now that is been repeatedly tried and tested it is eating the world, as some developers suggested it could eventually do so. I however do think this shows a different problem:
If nobody writes unit tests, how do you write them when you port over projects to ensure your new language doesn't introduce regressions. All rewrites should be preceded by strong useful unit tests.
- 9rx 9mo agoIdeally, but if a project wasn't written with tests at the time then finding a working time machine can be a challenge. If you try to add them later you won't capture all the nuance that went into the original program. After all, if the implementation code was expressive enough to capture that nuance, you'd already have your test suite, so to speak. Tests are written to fill in the details that the rest of the code isn't able to express.
- squeefers 8mo agohe has no answer for this
- giancarlostoro 8mo agoTests are written for various goals: integration testing, to prevent regressions, and in the same effort to prevent regressions to protect mission critical / business logic code. If all those nuances are captured by good tests, you arguably have "100%" test coverage, you don't need to test every single line of code ever written to have 100% test coverage in my eyes. But then when you go to translate your project to a new language, you port the tests first, then test against those tests. This is my personal belief on this anyway.
- throw384748 9mo ago[flagged]
- School-Cotton 9mo ago> Rust does not even have a specification Neither do most programming languages. > You are lucky if current version, compiles two years old code! That's not true.
- Wobbles42 9mo ago> Neither do most programming languages. Rust is trying to replace C++ and C in particular. Those languages have specifications.
- giancarlostoro 9mo ago> Neither do most programming languages. My favorite nemesis and friend JavaScript does, which always gives me a laugh. Such a mess of a wonderful language.
- aapoalas 9mo agoYou and me both; never change you beautiful bastard of a language <3
- Iridescent_ 9mo agoRust has editions for strong stability guarantees, and has had them for nearly a decade i believe. Besides, tech backing has grown way past the risky point.
- School-Cotton 9mo agoFWIW, the GP comment's claim that you're lucky if you can compile 2-year-old code is exaggerated, but so is yours. Rust does not offer "strong stability guarantees". Adding a new method to a standard type or trait can break method inference, and the Rust standard library does that all the time. In C or C++, this isn't supposed to happen: a conformant implementation claiming to support e.g. C++17 would use ifdefs to gate off new C++20 library functions when compiling in C++17 mode.
- UI_at_80x24 9mo agoBut the 90s was only 20-years ago! lol, you got me. Stupid old brain not calculating time correctly.
- giancarlostoro 9mo agoI was born in 1990 so I get it! I still say 21 when people ask me how old I am... Aka how old do I need to say I am to be able to drink alcohol LOL I don't drink that often mind you. I just don't really think about my age a whole lot...