comp.lang.ada
 help / color / mirror / Atom feed
From: claveman@inetworld.net (Charles H. Sampson)
Subject: Re: Bad coding standards
Date: Fri, 15 Dec 2000 07:56:15 -0800
Date: 2000-12-15T07:56:15-08:00	[thread overview]
Message-ID: <1elo8l3.coy4nxb5upaqN%claveman@inetworld.net> (raw)
In-Reply-To: 131220001555268634%emery@mitre.org

David Emery <emery@mitre.org> wrote:

> For a while, I collected coding standards as a hobby.  I've
> seen some dumb ideas, but here's my nomination for worst idea:
> 
>    package Long_Descriptive_Name is
>       
>       package LDN renames Long_Descriptive_Name
>       
>       type T is ...
> 
>    end Long_Descriptive_Name;
> 
>    with Long_Descriptive_Name;
>    package A_Client_Package is
>       package LDN renames Long_Descriptive_Name;
>    
>       procedure Proc (Param : LDN.T)...
>    
>    end A_Client_Package;
> 
> In this style, the existence and use of the rename was not
> an option, but was mandatory.  Furthermore, there were no
> rules for how a rename would be formed.  In some cases, the
> abbreviation related to some previous name for the package.
> I once sent out a "test" with 10 abbreviations for common
> packages, asking how many people recognized the renames.  The
> best score was 8 out of 10, and the average was about 5.
>
> ...

     Actually, I find this an acceptable compromise between my preferred
style of using the use clause and the usual style of requiring fully 
qualified names.  For me, qualifying everything with package names in-
troduces a tremendous amount of clutter, particularly if the package 
names are long, for the occasional payoff when looking up the name is 
necessary.  Using the two- or three-letter rename at least reduces that
clutter to manageable proportions.  If the abbreviations have some dis-
tinguishing characteristic, such as being all upper case, then your eye
can skip across them quite easily.  Standard, project-wide, renames are
helpful too, but that might not be practical in monstrous projects that
have hundreds of packages.

     As Robert has pointed out, if your environment has a good browser,
there's no need for these qualifications.  (Quibble to follow.)  I'll go
a step further.  If the design is good and identifiers are well chosen,
you usually know the package to look at to find a declaration, although
nothing tells you which lines to look at as a browser does.  Quibble: 
None of this helps much when porting code.  The browsers I'm familiar 
with don't work until something fully compilable is into the environ-
ment.   If you have compilation problem during the port, the search for
identifiers can be painful.

     I don't understand the point of the rename in the package specifi-
cation.

                                Charlie 


-- 
     To get my correct email address, replace the "claveman" by
"csampson" in my fake (anti-spam) address.



  parent reply	other threads:[~2000-12-15 15:56 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <910u3p$v9j$1@nnrp1.deja.com>
     [not found] ` <slrn9383g6.coa.randhol+abuse@kiuk0156.chembio.ntnu.no>
     [not found]   ` <9138e5$o6a$1@nnrp1.deja.com>
2000-12-11 19:34     ` constant string array Robert Dewar
2000-12-11 21:41 ` Pascal Obry
2000-12-12  2:54   ` Robert Dewar
2000-12-12  2:56   ` Robert Dewar
     [not found] ` <3A3445A8.8FC404D5@acm.org>
     [not found]   ` <912ut9$fga$1@nnrp1.deja.com>
     [not found]     ` <9132ng$j10$1@nnrp1.deja.com>
2000-12-11 19:39       ` Robert Dewar
2000-12-12  2:31     ` Ken Garlington
2000-12-12  2:53       ` Robert Dewar
2000-12-12  4:39         ` Ken Garlington
2000-12-12  4:56     ` Jeff Carter
2000-12-12 20:57       ` Beard, Frank
2000-12-12 23:05         ` Jeff Carter
2000-12-13  0:37           ` Robert Dewar
2000-12-13  0:36         ` Robert Dewar
2000-12-13  0:39         ` Robert Dewar
2000-12-13  2:02           ` Beard, Frank
2000-12-13  2:33             ` Robert Dewar
2000-12-13  2:55               ` Beard, Frank
2000-12-13  4:00                 ` Ken Garlington
2000-12-13 13:38                   ` Bad coding standards Marc A. Criley
2000-12-13 13:54                     ` Ken Garlington
2000-12-13 20:55                     ` David Emery
2000-12-14 13:07                       ` Robert Dewar
2000-12-14 14:21                         ` Ken Garlington
2000-12-15  0:08                           ` Wayne Magor
2000-12-15  1:40                             ` Ken Garlington
2000-12-15  3:18                         ` DuckE
2000-12-15  4:45                           ` Ed Falis
2000-12-15 15:44                           ` Robert C. Leif, Ph.D.
2000-12-15 16:34                             ` Ted Dennison
2000-12-16  6:08                               ` Robert C. Leif, Ph.D.
2000-12-16  1:16                             ` Robert Dewar
2000-12-16  1:19                             ` Robert Dewar
2000-12-17  5:49                               ` Robert C. Leif, Ph.D.
2000-12-17  8:24                                 ` Robert Dewar
2000-12-15 15:56                       ` Charles H. Sampson [this message]
2000-12-15 20:43                         ` Wayne Lydecker
2000-12-16  4:31                           ` Ken Garlington
2000-12-16 11:36                           ` Robert Dewar
2000-12-15 21:36                         ` tmoran
2000-12-15 18:41 ` constant string array Freelancer
2000-12-13 22:23 Bad coding standards Beard, Frank
2000-12-13 23:56 ` Ken Garlington
2000-12-14  0:37   ` Ken Garlington
2000-12-14  4:08 ` Robert Dewar
2000-12-14 14:06   ` Ken Garlington
2000-12-14 20:15     ` Robert Dewar
2000-12-15  5:55 ` Keith 
  -- strict thread matches above, loose matches on Subject: below --
2000-12-14  2:32 Beard, Frank
2000-12-14 12:19 ` Robert Dewar
2000-12-14 14:03 ` Ken Garlington
2000-12-14 20:14   ` Robert Dewar
2000-12-15  1:10     ` Ken Garlington
2000-12-18 16:09     ` Tucker Taft
2000-12-18 18:59       ` Marin David Condic
2000-12-18 22:20         ` Georg Bauhaus
2000-12-19 15:51           ` Tucker Taft
2000-12-19 16:12             ` Marin David Condic
2000-12-19 16:01           ` Robert Dewar
2000-12-19 15:49         ` Robert Dewar
2000-12-19 16:36           ` Marin David Condic
2000-12-20  1:52             ` Ken Garlington
2000-12-20 12:58               ` Marin David Condic
2000-12-20 14:27                 ` Ken Garlington
2000-12-21 23:19                   ` Marin David Condic
2001-01-03 19:49                     ` Wes Groleau
2001-01-06 19:45                       ` Lao Xiao Hai
2000-12-20 11:56             ` Mario Amado Alves
2000-12-19 18:05           ` Larry Kilgallen
2000-12-19 15:42       ` Robert Dewar
2000-12-15  0:52 ` Georg Bauhaus
2000-12-15  5:00 Beard, Frank
2000-12-15 14:14 ` Ken Garlington
2000-12-16  1:28 ` Robert Dewar
2000-12-18 20:00 ` Robert L. Spooner
2000-12-19 17:46 Beard, Frank
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox