News for hackers. Stuff that matters.
Re:Global variables are bad (2013) by V-2 on Thursday July 26, 2018 @04:10AM (#17615866)
Perhaps they are minor if there's one or two global variables. Once they're used liberally and there's plenty of them, the resulting bugs can become so elusive it can drive you mad.

A bug can be extremely hard to replicate, because it only arises from a very specific sequence of events that step-by-step flip the globals into an overall invalid state. And it's virtually impossible to determine "whodunnit".

It's a perfect recipe for "the app sometimes crashes on Thursdays" scenario.

Re:Global variables are bad (2013) by mpartel on Thursday July 26, 2018 @08:26AM (#17616859)
Ah, I meant to reply specifically to the command line flags use case.

For most other uses of globals, I fully agree.

Re:Global variables are bad (2013) by V-2 on Thursday July 26, 2018 @12:56PM (#17618924)
Ah, then I misunderstood you, sorry.

Of course this is a bit of a red herring anyway... As the original commenter remarked already, command line flags may be stored globally (eg. as read-only fields), but won't - and shouldn't - be variables.

They're only given once, and their values aren't going to change throughout the program's running time. So they're essentially constants, which is fine.