From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12865 invoked by alias); 4 Jan 2003 23:36:01 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 12856 invoked from network); 4 Jan 2003 23:36:00 -0000 Received: from unknown (HELO nile.gnat.com) (205.232.38.5) by 209.249.29.67 with SMTP; 4 Jan 2003 23:36:00 -0000 Received: by nile.gnat.com (Postfix, from userid 338) id 44473F29F3; Sat, 4 Jan 2003 18:35:49 -0500 (EST) To: gcc@gcc.gnu.org, kth@srv.net Subject: Re: c++ "with" keyword Message-Id: <20030104233549.44473F29F3@nile.gnat.com> Date: Sun, 05 Jan 2003 00:29:00 -0000 From: dewar@gnat.com (Robert Dewar) X-SW-Source: 2003-01/txt/msg00175.txt.bz2 > And to search for references to a structure becomes much more > complex. Instead of looking for a '.x' or '->x', you must now search > for 'x', and then look to see if the reference is within a 'using' > clause. You are imagining a very low level environment. In GNAT (using GPS) if you click on an entity, you get immediately to its declaration, and of course such a tool would disambiguate a reference immediately. You are also talking about misuse of the feature if you are talking about hundreds of lines of text. > If long names are causing you typing problems, then DON'T CREATE LONG > NAMES IN THE FIRST PLACE. The "standard" C and C++ libraries usually > use fairly short names for everything. Most of the long names I've seen are > those created specifically for the program in question. If the long > names are > a real problem for you, then why create them in the first place? Well that's the strongest argument in *favor* of WITH so far :-) Keeping names short because they are too painful to use is a significant negative effect, since well chosen longish names can often make a big difference to readability of code. Now it is true that the C++ syntax style generally favors short names: *p++ is a much nicer notation than Julian_Date_At_Maturity++ so you could argue that a feature that made it more convenient to use long names was inconsistent in style with C++ :-)