I don't mean to nitpick but I'm not arguing that it's burdensome or difficult to remember. I meant it when I said:
> once you know what the rule is I agree that it makes access control obvious
The rule is memorable and grokable, I agree with you! I don't use "silly" to characterize it as the wrong choice, I strictly mean it's a quizzical choice.
Using your hidden file analogy in Unix: if I were to invent a new file system and I decided to use lower case letters to represent hidden files instead of borrowing the "." convention, wouldn't that strike you as a silly choice given the ubiquity of Unix-like filesystems?
Unix has a hegemony that Go doesn't. Go can be a playground for the New Jersey Way.
But sure, I'll sign on to "quizzical". Mainly I'm glad that in Go there's only two levels of visibility, not 3+. Much easier to reason about. Altho I'll admit to being confused when you mix the two levels in the names of a struct and its fields.
> once you know what the rule is I agree that it makes access control obvious
The rule is memorable and grokable, I agree with you! I don't use "silly" to characterize it as the wrong choice, I strictly mean it's a quizzical choice.
Using your hidden file analogy in Unix: if I were to invent a new file system and I decided to use lower case letters to represent hidden files instead of borrowing the "." convention, wouldn't that strike you as a silly choice given the ubiquity of Unix-like filesystems?