5 ms·
Succinctness is Power (2002)
- BatFastard 9y ago>My hypothesis is that succinctness is power, or is close enough that except in pathological examples you can treat them as identical. This word has two meaning, which in some circumstances can have opposite effects. >succinct - briefly and clearly expressed. While succinctness is powerful. From a coding standpoint it can be a bear to maintain. I would much rather have clear verbose code than succinct code. I have had this problem especially with brilliant developers. They have a tendency to not stick around to maintain their code, and if it takes 10 times to expand it. Give me clear but verbose any day. I strive to make the intentions behind what I code clear to others.
- AstralStorm 9y agoThis has two sides. Either the programmer is writing verbose code because they're doing unnecessary work (in algorithm and in coding) or they really know what they're doing. Simular with succinct code, either you're bashing code using libraries and syntax you don't understand, or you're writing genius code but forgot to document it. Always remember you're the last person to judge clarity of your own code.
- BatFastard 9y agoI think doing the work to make your code self documenting is required. Some might consider that unneeded, but after after looking back at my own code years later, what was blatantly clear at the time, it no longer obvious years later. And I would say you are the FIRST person to judge the clarity of your code. Who knows who the last person will be...
- mabynogy 9y agoA recent related topic on LtU: http://lambda-the-ultimate.org/node/5402 http://lambda-the-ultimate.org/node/5402 Stroustrup's Rule: - For new features, people insist on LOUD explicit syntax. - For established features, people want terse notation.
- AstralStorm 9y agoUp to a point. There is a degree of terseness that does not help anymore, just increases number of mistakes. See Perl for example and sigil type marking that is a historical artefact of ancient 8-bit computer parsers. Conciseness is not the same as terseness. Fewer syntax elements used to express as opposed to shorter syntax. Succintness is another thing, also meaning lack of ambiguity. For example many dynamically typed languages are concise but not succinct. (You have to rely on names of things to know what they are and mean and assume no mistakes.)
- kristianp 9y agoHe also talks about programming from the bottom up, that leads to succinctness as well. http://www.paulgraham.com/progbot.html http://www.paulgraham.com/progbot.html http://www.paulgraham.com/lwba.html http://www.paulgraham.com/lwba.html