Earlier quoted context omitted.
Having everything available in Rust code also means you don't have to do lots of extra work for cross-compilation.
How does Rust help you if you have to cross-compile?
How to not rewrite it in Rust
211–220 of 231 posts
Re: How to not rewrite it in Rust
#212Earlier quoted context omitted.
You are free to fork, but that doesn't make it right. Imagine a well-funded startup trying to make a name for themselves decided to fork the top 10 emerging open source projects, put their company name on them, and then spend millions in PR/marketing so that (A) it seems like they invented them, and (B) they fork the community. Are they free to? Is it right? What will it mean for the original authors and experts who…
Forking for whatever reason is in the spirit of open source. Asking if something is right is nonsense. From an ethical point of view, it follows the license of the project so there is no issue. If the author of the original source had an issue with the above scenario, they would've chosen a more restrictive license that didn't make it possible.
This seems like the opposite of the usual ethical/legal distinction. It’s definitely legal to fork the project and the community, but not necessarily ethical.
I don’t think you can blame authors for not using a license that describes exactly what they are happy with. What constitutes an “ethical” fork is subjective, based on how necessary the fork is, and I don’t think a license could describe that.
Also, consider this analogy. The MIT license doesn’t contain a patent grant. So if some MIT-licensed software uses a patented technique, the software author and patent holder is within their legal rights to sue all forks of their for patent infringement. But this would be unethical, as the MIT license implies that the licensed software is given freely, not that you will sue all users of your software. Would you blame the sued parties for choosing to use MIT-licensed software, the way you are saying you would blame software authors for choosing a license that doesn’t forbid certain forks?
Re: How to not rewrite it in Rust
#213Earlier quoted context omitted.
Do you know how much c++/cli is automatically compatible with c# code? And how much does it retain compatibility with standard c++?
Everything that obeys to CLS. https://docs.microsoft.com/en-us/dotnet/standard/language-in... https://docs.microsoft.com/en-us/cpp/dotnet/managed-types-cp... Then you can also use regular low level stuff, but in that case you will get mixed mode Assemblies (other forms are now deprecated). https://docs.microsoft.com/en-us/cpp/dotnet/mixed-native-and... C++/CLI is basically a set of language extensions, just like clan…
Re: How to not rewrite it in Rust
#214I find it interesting that Michael apparently keeps his git-backed projects in ~/Documents/. Does anyone else do this?
Re: How to not rewrite it in Rust
#215Earlier quoted context omitted.
Exactly, when we talk about RiiR, we are saying, "I would like to have the guarantees that Rust provides". If the Rust ecosystem depends heavily on C/C++ libraries, then the system has the properties of the union of all the flaws and the properties of the language do not translate into a quality of the ecosystem. That said, I think containing C/C++ to a Wasm sandbox that can be integrated transparently with Rust woul…
TBH I still don't see it happening or being the case atleast in the near foreseeable future... Why you may ask..? The answer is simple cause there is always a cost. So the question is what is easier or when can one say the cost of using a "safer" language out weighs a "less safer" one.. Cause otherwise Rust is also too damn unsafe, just move to something completely safe Idris could be a good starting point. /s Puttin…
Rust isn't perfect, and perfect automatically-checked safety probably isn't possible, but it's dramatically safer than C/C++, and cuts down the amount that would need to manually audited to the point where it would be feasible to do it comprehensively.
Re: How to not rewrite it in Rust
#216Earlier quoted context omitted.
Yes, it is one less failure point to worry about, but in my experience using the respective task libraries in distributed applications, most of the multithreaded access bugs lie on external resource usage, and those Rust does not prevent. Not saying that it isn't important though.
Ownership/affine typing does allow modelling that, within a single program. For instance, the type representing a handle to the external resource can have limited constructors and limited operations, that will enforce single threaded mutations or access (including things like "this object can only be destroyed by the thread that created it").
Borrow checker doesn't help at all with process IPC.
Plus all ML derived languages have good enough type systems to model network states, while enjoying the productivity of automatic memory management.
Re: How to not rewrite it in Rust
#217Ummm.... any pointers as to what the author is talking about?
Re: How to not rewrite it in Rust
#218Earlier quoted context omitted.
No, I'm talking about the Debian OpenSSL bug Luciano Bello discovered. It was a lot worse than Heartbleed. Kurt Roeckx didn't introduce Heartbleed, and Heartbleed wasn't introduced by removing undefined behavior, so there is no plausible reason for you to infer that I was talking about Heartbleed. As for the cost of rewrites, there's a lot of evidence from software project metrics that the cost of modifying software…
We can almost always tell what a given piece of software will do, we just can't tell what all software will do in all cases.
Re: How to not rewrite it in Rust
#219Earlier quoted context omitted.
Autotools is rarely portable. I've been doing a lot of cross compiling recently: the vast majority of autotools projects can't be cross compiled. Sure autotools itself supports it, but something required to make it work didn't get connected up and so you can't do it. If you want to natively compile on a fairly recent linux with the common standard libraries autotools works well. Even though autotools was written to w…
Cross compiling to what? Autotools is probably the most portable piece of software out there as far as Unices are concerned.
CMake based projects almost always cross compile easily.
Re: How to not rewrite it in Rust
#220Earlier quoted context omitted.
We can almost always tell what a given piece of software will do, we just can't tell what all software will do in all cases.
That's a pretty significant almost. Regardless, kragen's point was not about whether figuring it out was possible but how expensive it would be.