Re: Multiple Inheritance / Generated Hidden Code
andre <[email protected]> Fri, 15 Aug 2025 10:03:23 +0200
| Newsgroups | gmane.comp.lang.smalltalk.vwnc |
|---|---|
| Message-ID | <[email protected]> |
--Apple-Mail=_D097D82C-6B72-4E39-98F4-F4C3F8374979 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Thanks, Helge. > Having said that, none of this hasn't got wide acceptance. Probably = because the problems they were thought to be solving weren't in the end = so ubiquitous that it made sense to pursue them any further. With most business applications these problems may not arise. Multiple-inheritance shines with deep UIs (e.g. Dragable, Audible, = Exportable, Browseable, Convertible) and complex resource management, = where responsibilities and roles are shared across different class = hierarchies.=20 With Smalltalk it's easy to build up large convoluted structures, but = its hard to properly tear them down and clean up *immediately* (i.e. = where GC is not enough). MI helps with encapsulating these = responsibilities because the entire life cycle of each = role/feature/capability is coded only in a single place. I also believe you have to have used it in practice in order to = appreciate it. If its not baked into the language and you never used it = much, why bother with someone else's academic ideas ;-) Andre --Apple-Mail=_D097D82C-6B72-4E39-98F4-F4C3F8374979 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dus-ascii"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: after-white-space;"><div>Thanks, = Helge.</div><br><blockquote type=3D"cite"><span style=3D"caret-color: = rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Menlo-Regular; = font-size: 13px;">Having said that, none of this hasn't got wide = acceptance. Probably because the problems they were thought to be = solving weren't in the end so ubiquitous that it made sense to pursue = them any further.</span></blockquote><div><br></div><div>With most = business applications these problems may not = arise.</div><div><br></div><div>Multiple-inheritance shines with deep = UIs (e.g. Dragable, Audible, Exportable, Browseable, Convertible) and = complex resource management, where responsibilities and roles are shared = across different class = hierarchies. </div><div><br></div><div>With Smalltalk it's easy to = build up large convoluted structures, but its hard to properly tear them = down and clean up *immediately* (i.e. where GC is not enough). MI helps = with encapsulating these responsibilities because the entire life cycle = of each role/feature/capability is coded only in a single = place.</div><div><br></div><div>I also believe you have to have used it = in practice in order to appreciate it. If its not baked into the = language and you never used it much, why bother with someone else's = academic ideas = ;-)</div><div><br></div><div>Andre</div><div><br></div></body></html>= --Apple-Mail=_D097D82C-6B72-4E39-98F4-F4C3F8374979--