Rob Pike <r...@golang.org> wrote: > Let me ask, because I'm genuinely curious: Why does it matter? The labels > we apply to things do not affect their function. Perhaps it affects how we > think about them. Is that it? >
Yes -- that's it exactly! I think the amount of hair-splitting over what is an object oriented language is reason to say it *isn't* an Object Oriented language at all. This variety of definitions means Go will probably not meet anyone's expectations. It's useless to talk about it in terms of something that we can't clearly define. Practically, I think the phrase "Object Oriented" is almost synonymous with Java and maybe C++ and C#. If you kind of load that context in your mind as you read, it becomes: Is Go an Object Oriented Language Like Java (or C++ or C#...) Answering "yes" is almost permission to apply patterns from those languages to Go as well. And that's rarely a good fit. We've all seen it: A Go code base written with Java idioms or with C++ idioms, etc. Saying "yes or no" is a non-answer. :) Saying "yes" opens the possibility for people falsely attributing things to Go. Saying "no" encourages people to abandon their pre-conceived notions and take Go for what it is. I recognize this is a kind of soft issue that is prone to bikeshedding. I considered it settled when Ian answered. -ayan -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/637ee17a.rAmwWESC82r2zuxK%25ayan%40ayan.net.