4 ms·
You have completely missed the point. Who are going to be these Rust programmers if no one is learning low level stuff? If all you're doing is teaching young pr
by joaodlf 9y ago
You have completely missed the point. Who are going to be these Rust programmers if no one is learning low level stuff? If all you're doing is teaching young programmers how to program in a specific language, how are they ever going to get that much closer to the machine?
- patrec 9y agoWhat makes you think you can't do (or teach) low-level stuff in Rust?
- lmm 9y agoWhy and how would learning C rather than Rust make them any closer to the machine? It's not like C corresponds particularly closely to the hardware (e.g. there's no way to get access to the carry flag). Learning assembly might be worthwhile, but learning C isn't.
- joaodlf 9y agoBecause C is less safe. Simple as. If I stop worrying about certain aspects of very low level programming, I will never learn how to implement the solutions that take care of that for other programmers to benefit from. My goodness, I'm not saying C is better, or that programming needs to be harsh by default, that memory needs all of your attention or that garbage collectors are for peasants... But there are many bonuses to learning C even today. Teach a kid Rust today and he will never really know about memory safety - it's handled, don't worry about it! My concern is when EVERYONE starts their journey like this, the small group of people that can handle it can only grow shorter.
- lmm 9y agoRust has unsafe for if you need it. You can also do resource management at high level in any language, and the techniques for that generalize very directly to implementing memory management. There's no excuse for teaching a language that doesn't have sum types or decent structured literals, a language that twists intelligent people into absurdities like http://www.tedunangst.com/flak/post/string-interfaces http://www.tedunangst.com/flak/post/string-interfaces . The djikstra quote about BASIC applies.