Also, there is an interesting point about OO languages made by Rob Pike (on the wiki page) that would also imply that Go is not OO by design.
> On Nov 22, 2022, at 9:43 AM, Robert Engels <reng...@ix.netcom.com> wrote: > > > Go is not listed as an OO language on Wikipedia. > > Personally I think it is OO-like. OO typically has inheritance. > > There are also no “class variables” - only package level - which makes some > encapsulation patterns harder (every class has to become a package). > >>> On Nov 22, 2022, at 9:06 AM, Matt KØDVB <m...@k0dvb.com> wrote: >>> >> The correct answer is actually “yes” because neither classes nor >> inheritance are necessary or sufficient for “object-oriented” programming. >> >> https://www.youtube.com/watch?v=jexEpE7Yv2A >> >> Sent from my iPad >> >>>> On Nov 22, 2022, at 9:02 AM, Ayan George <a...@ayan.net> wrote: >>>> >>> >>> >>> The Go FAQ begins the answer to the question, "Is Go an object-oriented >>> language," with, "yes and no." >>> >>> https://go.dev/doc/faq#Is_Go_an_object-oriented_language >>> >>> The section goes on to say that Go has methods but there is no type >>> hierarchy. I guess those are the yes and no. >>> >>> But I feel like programmers bringing their ideas from other less >>> ambiguously object oriented languages like Java and C++ often have >>> difficulty writing idiomatic Go. >>> >>> If the answer to that question is "yes and no," it'd be less ambiguous to >>> simply say, "no." And that would be a definitive way of indicating that it >>> woul be inappropriate to apply many patterns from object oriented languages >>> to Go -- and to encourage people to accept Go for what it is. >>> >>> Since receivers are parameters and one could use methods without using the >>> method calling syntax at all, I'd suggest we'd classify it as a structured >>> programming language with methods. >>> >>> In either case, is there a way to make the FAQ more clear on this point? >>> >>> -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/CAPSh2XBozm9bOe-O3SphET3A3wTif%3D0RiV%3D1Bw6GJkgT3wedLA%40mail.gmail.com. >> >> -- >> 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/2B1E6084-E6F1-4B21-8ADF-06DA02A56966%40k0dvb.com. -- 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/650DFE5D-C686-4F2D-A957-6E296E0D17CA%40ix.netcom.com.