From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,131f06967722ab4b X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Ada 2005? Date: Wed, 22 Dec 2004 09:55:17 +0100 Organization: cbb software GmbH Message-ID: <1ttqv5msigzua$.12l6jurw2zmd6$.dlg@40tude.net> References: <1103344064.372396.51420@c13g2000cwb.googlegroups.com> <1n1v6175zrtcc.2g6ewdvu7ei5$.dlg@40tude.net> <1103568585.285484.237450@c13g2000cwb.googlegroups.com> <20xbhf8rjd33.t7dojmf0ky12.dlg@40tude.net> <1nl7gq6tozeyw.146x7at50m0lr.dlg@40tude.net> <1vj2pp9437gal.1b1lyqe3o973k$.dlg@40tude.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: individual.net hma+PB5Z0j/FW+HA1dQ2UQ8k4/R+oQe+8R8ZPCW/MC9nlPVNQ= User-Agent: 40tude_Dialog/2.0.12.1 Xref: g2news1.google.com comp.lang.ada:7143 Date: 2004-12-22T09:55:17+01:00 List-Id: On 21 Dec 2004 16:42:58 -0500, jayessay wrote: > "Dmitry A. Kazakov" writes: > >> On 21 Dec 2004 12:10:21 -0500, jayessay wrote: >> >>> 1. For an example of of multiple dispatch, see generic functions, >>> method resolution and dispatch in CLOS: >>> >>> http://www.lispworks.com/reference/HyperSpec/Body/07_f.htm >>> http://www.lispworks.com/reference/HyperSpec/Body/07_ff.htm >> >> The problem with MD is not target method resolution, which is quite >> trivial, but safety in presence of inheritance with combinatorial >> explosion of target methods to override > > Method combination and consistency is part of method resolution by any > reasonable assesment. Yes >> I doubt that CLOS seriously approaches the problem. > > That's an odd statement, and it is just uninformed opinion which > happens to be factually incorrect. Maybe, but the very first page introduces "no-applicable-method". It is a non-starter for me. In my view the goal of safe MD design is to make dispatch failures impossible (checked at compile time). BTW, I am deeply unsatisfied with Ada's "MD" raising run-time exceptions. It is tolerable because there was no better way, and only as an intermediate state to be replaced by a "right" MD in the future. > If you really would like to > understand the issues you should read the hyperspec sections noted > above as a start. This will give you a programmer's (user's) view of > things albeit from a language specification angle. > > More information as to the what, hows, and wherefores can be found in > (1) and further insight and rationale is detailed in the MOP (2). > > It's worth noting that CLOS method combination is actually > programmable. There are several versions supplied as part of the > specification (including the 'standard method combination'), but the > protocol and semantics of how to define others is also defined and > specified. I don't think it is a good idea. I believe that there must be one right way. Though, there might be some variations, in the case of commutative methods for example. But they should be "projections" of the main schemata. I really, wouldn't allow programmers to play with fire. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de