pwd@computer-lab.cambridge.ac.uk (03/16/89)
[Warning: This may provoke a religious war] In article <118@eiffel.UUCP> bertrand@eiffel.UUCP (Bertrand Meyer) writes: > One way to summarize this discussion is to say that I do not know of any > good way to reconcile the following three language traits: > > 1. Routine arguments (in the above sense, ie routine arguments to routines) > 2. Static type checking > 3. A language design that makes separate compilation of modules possible CLU supports all of these, as does CCLU (the concurrent CLU with RPC used in Cambridge). CCLU doesn't have inheritance, we simply use generic clusters (a bit like ADA packages) instead, that might be why its possible to combine the three features above in this language. However we find that there is no difficulty in writing large multi-user distributed programs in CCLU and suspect that inheritance is more complicating than can be justified, given our areas of interest. It might be worth saying that we have _never_ met anyone who has written a large program in CLU or CCLU who has later chosen to switch to another language of their own free will (except for low-level systems work). The only language we've ever encountered that seems to be easier to work with and which maintains a balance between functionality and simplicity is DPL (from the ANSA project in Cambridge), but they are still developing their compilers. Eiffel looks very interesting, but we feel that if something cannot be written easily using genericity then the problem can only be solved using inheritence by relying on deep knowledge of the inherited classes and this is likely to prove dangerous in anything other than single user systems. In our opinion, inheritance is likely to compound the problems inherent in maintaining large systems, even though it superficially makes this easier in the short term. -- Peter & Stephen PS We are now heading for our nuclear fallout shelter! +-----------------------------------------------------------------------------+ | Phone: +44 223 33 4718 Fax: +44 223 33 4678 E-Mail: pwd@cl.cam.ac.uk | | Phone: +44 223 33 4718 Fax: +44 223 33 4678 E-Mail: smvh@cl.cam.ac.uk | +-----------------------------------------------------------------------------+ | Post: Computer Lab, New Museums Site, Pembroke St, Cambridge, CB2 3QG UK | +-----------------------------------------------------------------------------+