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>
dijkstra was right
if you flip it over it spells 80085
some people just want to see the world
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBS
BOOBSEveryone’s heard of the “Hello world” being people’s first program, but just as popular among teenaged boys is their second, more advanced program: Boobs! :)