You might think it doesn't matter whether you use spaces or tabs. Yet be very wary when using the make build automation tool. In what Eric S Raymond described as "one of the worst design botches in the history of Unix", semantic meaning was assigned to a TAB character in column one of makefiles!
This tragic UI blunder has cost thousands of hours of lost productivity over many years. I've personally suffered, puzzling over cryptic error messages from make after my editor automatically converted TABs to spaces ... so I naturally singled it out as an example of a UI mistake when I wrote On Interfaces and APIs:
The Unix make utility decrees that the actions of a rule must start with a tab. If you accidentally insert a space before the leading tab, look out! Ditto if your editor or other tool is configured to automatically convert tabs to spaces. This unfortunate design choice is a violation of the principle of least astonishment because most programs treat spaces and tabs the same way. Moreover, when you hit a (typically cryptic) error message for using a space instead of a tab, it may take a long time to figure out what the problem is because tabs and spaces look the same in most editors.
In reply to Re^4: [RFC] Review of module code and POD
by eyepopslikeamosquito
in thread [RFC] Review of module code and POD
by Bod
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |