5 ms·
Isn't an indent a clear demarcation?
by rhn_mk1 5y ago
Isn't an indent a clear demarcation?
- zmmmmm 5y agoOnly if you forbid tabs ...
- a9h74j 5y agoIf it must be created by non-programmers too delicate to match braces, how about BEGIN .. END and an autoformatter. Or, NODE <name> .. END .
- aimor 5y agoLiterally, yes. But I find it incredibly annoying to estimate indentation when lines are wrapped in an editor (or webpage). Or, to a lesser extent but still throws me off, when multiple blocks end at the same line. Or when pasting blocks into another block, and having to double check to make sure the indentation was carried over correctly. I like editors that visually show indentation characters.
- dylan604 5y agotabs or spaces for that indent? it makes a difference on how it is parsed, so it's more than a devs preference
- kevincox 5y agoIt really doesn't matter. Just force the leading indent to be exactly the same bytes. If indent moves between two values where one isn't a prefix of the other raise an error.
- dylan604 5y agois one \t the same as \s{4,} in bytes? that doesn't make any sense
- kevincox 5y agoNo it isn't. That is the point. If you have one line indented with 4 spaces and one line indented with a tab there is no correct answer what the difference of indent is. The only good option is to raise an error.
- dylan604 5y agoright, or encapsulate in some sort of braces ;-)
- kevincox 5y agoSure, that is another option. But your code still looks confusing. Personally I mostly use indent to read code, so requiring that the indent matches the semantic nesting makes it much easier for me to understand.
- dylan604 5y agoLooks confusing to who? Another coder? Then they have issues. I get the original was talking about client facing config files. I'd rather see INI style config files personally. If you're writing ugly code, braces or spaces won't save you. Just don't write ugly code.* Write it like the next person to view your code is an axe murder that knows where you live, so don't make them mad. You can minify later. *I'm ignoring Perl, as it's always ugly
- goodpoint 5y agoNot at all. If it was code, an indentation error would often not compile or show errors or fail tests. Configuration in YAML is much worse: most of the time an indentation error goes undetected until an application starts misbehaving. Significant whitespace is perfectly ok for code but a huge footgun for YAML