I will start with cautionary tell. At one of his public talks Bjarne Stroustrup in some way, admited that he made a very bad job when teaching people C++ and now we must live with many bad practices being a norm and even adviced as good practices. In Stroustrup words "I didn't care about "Let them hear your message", "Show them the vision". I was thinking, that it just a rabbish. It is not.".
I would classify all questions like "Is Go OOP language?" in the category "Let them hear your message". People like Rob Pike, Robert Griesemer and Ian Lance Taylor probably don't need any labels like that, since, at the end of the day, these labels answer very little important questions and they can just go to the heart of the matter. But, let face it, very few people is on thier level, especiall among newcommers. We know how much hot topic was "generics in Go" (one of the less know part of the language in may case), when Robert Griesemer can just say in his talks about adding them to Go "Generics are just glorified (type checked) macros" (GopherCon 2020). For me it is one of the signs of how good people like Griesemer are: for them the many hottest topics are just "no big deal". Previously, rightly, it was observed that 1990s OOP was a huge fad. Unfortunetly, it is still big fad in many places. I'm from Poland, where the most popular book, which I read myself as the beginner, in the last 30 years on C++ is written with this OOP fad spirit. And from many reasons, people in Poland in the age span 15-25 still today starts they programming journej with this book. People raised in such enviroment, when comming to any other language will be asking "Is it OOP?". Languages for which answer is "Yes" will be classified as "cool" and these for which answer is "No" as "Uncool, outdated and passe". Which is rabbish, but new people just don't know better. If this discussion about "Is X OOP language?" was just about which labels applies where, I would probably shrug and go do more important things. But, I consider it a case of "Let them hear you message" to use this slogan, and I happy to spend some of my time expleining people who ask what I understand about Go. For the same reason, I consider spending time in this thread, a things that can lead to something valuable. Best regards, Kamil czwartek, 24 listopada 2022 o 11:40:45 UTC+1 Kamil Ziemian napisał(a): > " 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?" > My point of view is that. In the moment when you learn the flow of > language X, it doesn't matter. But, it is not a thing that you get without > some work and many mistakes done along the way. > > Before that labels are important on at least two levels. > 1) As promotion/marketing tool. If someone think that OOP is cool, he > would here that language X is OOP he would think "O, new language doing OOP > in new cool way. Maybe I should learn it? You know, OOP is cool". > 2) As a guide for the people what to think and how to use about language > X. In the original post was already mention, that C++ and Java programers > have problem with writting good code in Go. My feeling is that, they try > write C++/Java code in Go, "they all OOP languages", which is missing the > point. > > Hard truth is that for most people, me included, our ways of thinking > (about everything) and of coding ossified and stiffen after a time and we > need to put quite a work to make them fresh and flexible again. To use > somewhat radicolous example, if you put label "bike" on washing machine > some people will try to ride to work on it and they will complaine, that is > not very good bike. > > Best regards, > Kamil > czwartek, 24 listopada 2022 o 02:27:57 UTC+1 Rob 'Commander' Pike > napisał(a): > >> 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? >> >> -rob >> >> -- 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/b5b01263-8634-4ec8-847c-51db5a8699bbn%40googlegroups.com.