Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!cs.utexas.edu!uunet!microsoft!jimad From: jimad@microsoft.UUCP (Jim ADCOCK) Newsgroups: comp.lang.c++ Subject: Re: Overloaded operator dot? Message-ID: <71516@microsoft.UUCP> Date: 25 Mar 91 21:15:16 GMT References: <11152@jarthur.Claremont.EDU> <624@taumet.com> <12193@pasteur.Berkeley.EDU> <1991Mar21.032937.16534@world.std.com> Reply-To: jimad@microsoft.UUCP (Jim ADCOCK) Organization: Microsoft Corp., Redmond WA Lines: 29 In article <1991Mar21.032937.16534@world.std.com> wmm@world.std.com (William M Miller) writes: |That doesn't answer the question -- all you've done is to give the new |feature a name. The real issue is whether the technique solves any major |problems that can only be addressed awkwardly or not at all in the existing |language. In other words, give some specific applications that demonstrate |that "smart references" aren't just another of the hundreds of nifty ideas |floating around that are cute and interesting but don't really expand the |power of the language to address real-world problems. I disagree. On the contrary, I believe Joe Buck, myself, and others have repeatedly shown what the problem is. But, when we place all the problems we've found into one category which we label "smart references" some people argue that we're just applying a name to a category we've made up. And then when we show specific short examples of the problem then people argue that the examples we give are academic and give hack work-arounds. Even if it *were* true that people can do things similar to smart references with smart pointers [albeit at the cost of customers having to guess whether to use pointer or dot syntax everywhere] why should it be that throughout the C++ languages people have the choice to either use pointers or references -- -- EXCEPT when it comes to operator overloading? Why not just make the language orthogonal and say that its up to the programmer to decide when its appropriate to use pointers, and when its appropriate to use references? Why in this one obscure case in the language try to mandate some people's preference of pointers over references? Why defend an exceptional case, when it can be easily removed?