Deutsch English Français Italiano |
<vhs3ji$1kb5c$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Pancho <Pancho.Jones@proton.me> Newsgroups: comp.os.linux.misc Subject: Re: Joy of this, Joy of that Date: Sat, 23 Nov 2024 08:26:26 +0000 Organization: A noiseless patient Spider Lines: 46 Message-ID: <vhs3ji$1kb5c$1@dont-email.me> References: <vhigot$1uakf$1@dont-email.me> <6iKdnTQOKNh6AqD6nZ2dnZfqn_idnZ2d@earthlink.com> <20241120081039.00006d2a@gmail.com> <vhlium$93kn$1@dont-email.me> <vhmprp$iaf1$1@dont-email.me> <LASdnSkA69I3yKL6nZ2dnZfqnPWdnZ2d@earthlink.com> <vhoeap$r8gq$2@dont-email.me> <vhpmq3$14s79$2@dont-email.me> <vhq1f7$16bou$1@dont-email.me> <vhqm4g$1aarf$1@dont-email.me> <vhr2r7$1cdln$1@dont-email.me> <vhr8hh$1ddh7$2@dont-email.me> <vhr9u1$1dh3s$1@dont-email.me> <vhrbsr$1dqca$2@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 23 Nov 2024 09:26:27 +0100 (CET) Injection-Info: dont-email.me; posting-host="0996b149b2c257ae77a172fc1c1f1afd"; logging-data="1715372"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Pc3P3XlUmNTJf5ij/yl3w6j6nOeLh3mo=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:tLpOc9QOziLpzCm7Prbhqbw7x0c= Content-Language: en-GB In-Reply-To: <vhrbsr$1dqca$2@dont-email.me> Bytes: 3116 On 11/23/24 01:41, Lawrence D'Oliveiro wrote: > On Sat, 23 Nov 2024 01:08:16 +0000, Pancho wrote: > >> On 11/23/24 00:44, Lawrence D'Oliveiro wrote: >>> >>> On Fri, 22 Nov 2024 23:07:19 +0000, Pancho wrote: >>> >>>> I learnt Smalltalk before I learnt C. >>> >>> Smalltalk is an interesting language. But I think it’s considered a >>> little too unconventional these days ... >>> >>> Does it do multiple inheritance? I can’t remember. >> >> No, not that I remember. Classes, Metaclasses, Single inheritance, very >> clean. > > “Metaclasses” were just a bit of a hack to implement what Python would > call “classmethods”. I think the Smalltalk idea of treating classes as objects, is the opposite of a hack. It is a very clean and simple idea. Even today I still think metaclasses are the easiest way to imagine some behaviour of OO languages. I would say C++ static methods and static variables are a hack. C# type reflection is a hack. Just as value types are a hack in C#. Things that are sensible for performance reasons, but that add complexity. It was easy to see where Python metaclasses came from. > Python also has “metaclasses”, in the sense that > classes, being first-class objects, must be instances of something -- and > that something is the metaclass. > > Not sure if any other language has that meaning for “metaclass”. > >> I think Smalltalk was more a teaching tool rather than anything >> people used commercially > > I’m pretty sure it has been used commercially, back in the 1980s or > so, maybe even the 1990s. Probably, just as some people program in Haskell or Prolog.