4 ms·
What kind of monsters don't use parentheses on sizeof. Is it the same guys that put { on new lines and have giant comment templates for every one line function.
by soup10 11y ago
What kind of monsters don't use parentheses on sizeof. Is it the same guys that put { on new lines and have giant comment templates for every one line function.
- michaelmior 11y ago{ on new lines seems to have dominated the majority of code I've worked with although I've always preferred putting it on the same line myself.
- pivo 11y agoI put it on the line that makes the code following it the most clear
- MrBuddyCasino 11y agoHow do you handle auto-format? If a rules doesn't survive that, its not practical, at least for me.
- pivo 11y agoWe don't use auto format for one because as far as I know it's not available for our languages (objective-c and swift)
- deleted 11y ago[deleted]
- vidarh 11y agoI've never met an auto-formatter that I haven't hated the output of enough to not use it.
- MrBuddyCasino 11y agoWhich ones would that be? The Eclipse one has a million knobs and twiddles, and is bearable in 95% of the time after fiddling with them a lot, which I'm okay with.
- vidarh 11y agoI must admit I haven't used Eclipse's auto-formatter because I've never met an IDE that haven't made me want to kill myself, and Eclipse is at the top of the list of IDE's I have never been able to stand more for than 5 minutes.
- harkyns_castle 11y agoMost C++ codebases I've seen have the brace on a fresh line, most Java codebases at the end of the line (at a guess born of the Sun guidelines and default Eclipse formatting perhaps). I started with the former, but prefer the latter now. To me its more about conserving an extra bit of vertical space... I like my methods/functions quite compact. In the past I liked the balanced nature of the braces though. Makes absolutely no appreciable difference though of course, as long as you don't get into a formatting war with your team.
- MrBuddyCasino 11y agoAh, to join the bikeshedding: { on newlines make imho more sense, the block of code is visually balanced that way. We have high-res screens now, no reason to pretend we're still on 80 char terminals. But work long enough in either one of those styles, and the other one will start to look strange.
- Retra 11y agoWhat advantage does 'visually balanced' give? That's like saying the letter A is better than B because it's 'stands up better.' Indentation is how you should identify blocks.
- xamuel 11y agoIndentation to identify blocks can break down in things like switch statements: switch( c ) { case 'A': simple_stuff(); break; case 'B': { int temporary_variable = 0; complex_stuff( temporary_variable ); } To me, the advantage of braces on newlines is it makes it extremely easy to tell where blocks start and end---whether you're using your favorite IDE, or reading the code on a blog, or reading the code with "cat". I actually think it's a case where Python has the design advantage on C (since if you do braces-on-newline consistently enough, you end up duplicating python but with superfluous braces added in).
- JoeAltmaier 11y agoFundamentally, the problem is that braces are needed at all. Humans are bad at matching them up, so they don't match the humans' intention when indenting. Confusion. It's all backward. The IDE should SHOW you the blocks somehow (background tone changes etc), and let you edit the blocking explicitely. If they look wrong, you select and hit a key. Now you're in agreement with the compiler.
- MrBuddyCasino 11y agoYeah, this is one thing Python got right. You should indent anyway, and then the curly braces aren't needed anymore. I don't know what the point is in pretending IDEs or advanced text editors don't exist.