3 ms·
> It is easy to tie yourself in knots by doing the complicated thing. The solution is to do the simple thing. Good advice. Corollary: don't use tools that make
by notacoward 8y ago
> It is easy to tie yourself in knots by doing the complicated thing. The solution is to do the simple thing.
Good advice. Corollary: don't use tools that make it hard to do simple things, or force you to live with the not-simple things others have done.
- ncmncm 8y agoMy available choices for what I do are C++ and, theoretically, Rust. Rust has the advantage of fewer legacy choices thrust upon it, although it is rapidly building up its own legacy. It is thus far less expressive, so I cannot capture as much meaning in a library. It is less mature, limiting its practical usability. It has some complications C++ lacks, some of which are unavoidable even in little programs. By the time Rust is mature, it (including its milieu) will be as complicated as C++ is today, with as many legacy boat anchors. But it will be as expressive and as practically useful, and I will have two choices of commensurate standing. For now, C++ is really all we have. It all traces back to the destructor: the original innovation that makes the rest possible. Rust's Drop trait fills the identical role. Nothing else has it. How do I deal with C++'s complexity? I stay the hell away from things that are too hard to understand. It's not hard. The most useful parts of the language are simple when used right.