comp.lang.ada
 help / color / mirror / Atom feed
From: Stephen Leake <Stephen.A.Leake@nasa.gov>
Subject: Re: Style question: deep inheritance
Date: 03 Dec 2002 09:21:53 -0500
Date: 2002-12-03T14:33:15+00:00	[thread overview]
Message-ID: <ud6ojw5by.fsf@nasa.gov> (raw)
In-Reply-To: 5463bc76.0212030344.712c30aa@posting.google.com

David95038@aol.com (David Kristola) writes:

> <snip>  So, portal
> specific operations can be found in
> SAM.Entities.Things.Portals.  The three (and
> counting) specializations of Portals are only
> referenced once to initialize them and let them
> register themselves into the system.  I could use
> renames to flatten out the majority of references
> (package SAM.Portals renames
> SAM.Entities.Things.Portals;), but you can't
> inherit from a rename, so the actual children are
> still deeply nested.  The long package names
> usually mean long file names.  This could become a
> portability problem.

Any compiler implementation that limits file names must still allow
long package names, and therefore provide a mechanism to map between
them. Therefore I don't see how this could become a portability
problem, any more than any file naming convention is a portability
problem. 

A system should be a simple as possible, but no simpler. Your package
names reflect the actual organization of the system; that's a benefit
:).

Sometimes, you can inherit from a type in a sibling package, rather
than in a child package. So perhaps SAM.Portals is the _right_ package
name in the first place?

-- 
-- Stephe



  parent reply	other threads:[~2002-12-03 14:21 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-03 11:44 Style question: deep inheritance David Kristola
2002-12-03 12:55 ` Dale Stanbrough
2002-12-03 12:56 ` Marc A. Criley
2002-12-04  6:56   ` Anders Wirzenius
2002-12-04 12:41     ` Marc A. Criley
2002-12-06 11:00       ` David Kristola
2002-12-09 15:05         ` Ted Dennison
2002-12-03 14:21 ` Stephen Leake [this message]
2002-12-04 19:19 ` Ted Dennison
replies disabled

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