I didn't say Java didn't have late binding, but that it didn't have late binding of every possible type (the "all things" in Kay's quote).
On Tue, Nov 22, 2022 at 10:25 AM Robert Engels <reng...@ix.netcom.com> wrote: > Why do you say that Java does not have late binding. It 100% does. In fact > the JVM supports dynamic dispatch to make this as efficient as possible. > Then the JIT optimizes it even more based on runtime behavior. > > On Nov 22, 2022, at 10:18 AM, Matt KØDVB <m...@k0dvb.com> wrote: > > > But see https://en.wikipedia.org/wiki/Self_(programming_language) > > Self was considered an OO language back when I was a grad student and is > still listed that way today, even though it has neither classes nor > inheritance. > > Anyway, my point would be that the term OO originates with Alan Kay and > the team at Xerox PARC; Kay’s response to the OO flame wars was to > de-emphasize classes and inheritance. > > Of course, using his definition, neither Java nor Go would be “truly” OO > since not all things use late binding :-) > > Perhaps we can talk about class-based and non-class based OO languages? > > On Tue, Nov 22, 2022 at 10:07 AM Robert Engels <reng...@ix.netcom.com> > wrote: > >> The wiki OO page lists classes as a requirement - but not necessarily >> inheritance. Class variables require classes. >> >> Also, your link does not work. >> >> > On Nov 22, 2022, at 9:56 AM, Jan Mercl <0xj...@gmail.com> wrote: >> > >> > On Tue, Nov 22, 2022 at 4:43 PM Robert Engels <reng...@ix.netcom.com> >> wrote: >> > >> >> Go is not listed as an OO language on Wikipedia. >> > >> > Check https://en.wikipedia.org/wiki/Go_(programming_language): >> > "ParadigmMulti-paradigm: concurrent imperative, object-oriented[1][2]" >> > >> >> Personally I think it is OO-like. OO typically has inheritance. >> > >> > Typically they may, but that's not the same as what a requirement >> > would be, right? >> > >> >> There are also no “class variables” - only package level - which makes >> some encapsulation patterns harder (every class has to become a package). >> > >> > No class has to become a package because Go has no classes. You may >> > think of what a "class" in Go means, but you have not defined that >> > idea and the language specification is somehow silent about Go >> > classes. >> > >> > -- >> > 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/CAA40n-U%3DG8gqAZEHrnLUxbg5vsAcRkNV35c86c79xcrhSzLSWw%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/A1F03B77-7CDC-46CC-B2E0-2C3C1B7DC966%40ix.netcom.com >> . >> > > > -- > > Matt > K0DVB > > -- > 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/CANRS-2%2Bre6WUFT6tE8QinUZ-ipqLvwNTr2hoHNiD4H%3DwQ8T7HA%40mail.gmail.com > <https://groups.google.com/d/msgid/golang-nuts/CANRS-2%2Bre6WUFT6tE8QinUZ-ipqLvwNTr2hoHNiD4H%3DwQ8T7HA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > -- Matt K0DVB -- 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/CANRS-2%2Bmh04pZ_azKuknUe0%3DtVJE4JS_ZZV%2BjBijS%2BCBcQOOaQ%40mail.gmail.com.