The Robustness Principle may seem like little more than a suggestion, but it is the foundation on which many successful things are based.
To boil it down to meme-level old-school Torvaldsry: Assume everyone else is a f--king idiot who can barely do what they're supposed to and expect to parse their files / behaviour / trash accordingly.
If you do not do this, you are, without doubt, one of those f--king idiots everyone else is having to deal with. If you do do this, it does not guarantee that you are not a f--king idiot. Awareness is key.
Examples where this works: Web browser quirks mode; Driving a car; Measure twice, cut once. This latter one is special because it reveals that often, the f--king idiot you're trying to deal with is yourself.
Assume everyone else is worse.
Fun corollary: In altering his behaviour towards ~~f--king idiots~~ people who should know better, Linus has learned to apply the robustness principle to interpersonal communication.
Wow. I totally forgot that Commodore BASIC ignores spaces in variable names. I do remember that it ignores anything after the first two letters though. That said, there's a bit more going on here than meets the eye.
PRINT HELLO WORLD
is actually parsed asPRINT
HELLOW
OR
LD
, that is: grab the values of the variablesHELLOW
(which is actually justHE
) andLD
, bitwiseOR
them together and then print.Since it's very likely both
HE
andLD
were undefined, they were quietly created then initialised to 0 before their bitwise-OR was calculated for the0
that appeared.Back in the day, people generally didn't put many spaces in their Commodore BASIC programs because those spaces each took up a byte of valuable memory. That PET2001, if unexpanded, only has 8KB in it.
</old man rant>