|
|
|
|
|
by elbear
816 days ago
|
|
If you're the only one reading the code, then sure write it however you like it. But using long chains of expressions is the same as one-liners or point-free style in Haskell. It saves some typing and also you can skim the code more easily, but only if you're extremely familiar with what's going on there. I wonder how much you can benefit from this, if you return to the codebase after a 6-month break though. Maybe some people do manage to really memorise these details, but for some of us the effect is more like "wtf is this code doing?" |
|
I prefer more verbs and not too many nouns, and I think our brain is used to reading "sentences" like that.
Is not that dissimilar from instruction we can understand quite well: If there are complex procedures, I also want to name a temporary result. It's like a divide and conquer strategy. You divide complex expression or instructions to separate definitions and combine those. But I also don't want to divide too much. This on the other hand again obscures IMO.If I name every internal state, we get this.
Which I can parse, but it takes more energy to validate that I used the right variable at the right place, not some variable from higher up in the code for example. You probably also don't code like this, but there is some middle ground ...Just as a thought experiment, don't take me too seriously I will try to "humanize" those instructions:
Maybe you can make more balanced version which will be the best of both worlds. Thanks for the discussion :).