3 ms·
I've never programmed in Rust because I still have trouble seeing the point. It seems overly restrictive. A copy of any data has nearly zero marginal cost (and
by jstimpfle 8y ago
I've never programmed in Rust because I still have trouble seeing the point. It seems overly restrictive. A copy of any data has nearly zero marginal cost (and you can pay the cost by doing the work yourself), so in a free machine, it would have nearly zero price. If widely useful data is protected by the borrow checker, far fewer people will use it.
It is easy to show that the total utility of a piece of data to the rest of the program is reduced by assigning an owner to it. Each potential user of the data, faced with the need to mess with the borrow checker to use it, may choose to mess, or may forego use of the data and write a complicated workaround instead.
To counter the borrow checker, I'm currently designing a programming language featuring a mechanism that grants free access to data structures, with the restriction that copiers must grant the same rights to anyone else:
0. the freedom to use the data for any purpose,
1. the freedom to change the data to suit your needs,
2. the freedom to share the data with your friends and neighbors, and
3. the freedom to share the changes you make.
- nicoburns 8y ago> A copy of any data has nearly zero marginal cost I don't think this is true at all. Reducing copies and allocations in my programs is one of the things which has speeded them up the most. > If widely useful data is protected by the borrow checker, far fewer people will use it. Are you also against private struct/class fields? Because they also restrict access to useful data. For me, the need for Rust is as a language that gives me maximum possible performance, while giving me safety guards that C and C++ do not. This makes Rust much easier to use than those languages for me.
- sushibowl 8y agoThe person you're replying seems to be making a parody of copyleft, applying Richard Stallmann's four essential freedoms to program data. I don't think it's a serious attack on Rust's borrow checker.
- nicoburns 8y agoAh yes, I see it now. Thanks :)
- jstimpfle 8y agoI very much agree with this: https://www.youtube.com/watch?v=_xLgr6Ng4qQ https://www.youtube.com/watch?v=_xLgr6Ng4qQ
- blackoil 8y agoi.e. Memory will be under GPL license!
- twic 8y agoI'd just like to interject for a moment. What you're referring to as Rust, is in fact, Rust/LLVM, or as I've recently taken to calling it, Rust plus LLVM ...
- unethical_ban 8y agoDid you just read the Mongo/Amazon article and get inspired?
- nostrademons 8y ago"To counter the borrow checker, I'm currently designing a programming language featuring a mechanism that grants free access to data structures, with the restriction that copiers must grant the same rights to anyone else:" So....C? GNU makes so much sense now!