Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:35997 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 36122 invoked from network); 6 Mar 2008 08:19:29 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 6 Mar 2008 08:19:29 -0000 Authentication-Results: pb1.pair.com header.from=mr@segtel.dk; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=mr@segtel.dk; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain segtel.dk from 195.74.76.71 cause and error) X-PHP-List-Original-Sender: mr@segtel.dk X-Host-Fingerprint: 195.74.76.71 unknown Windows 2000 SP4, XP SP1 Received: from [195.74.76.71] ([195.74.76.71:38655] helo=smtp.segtel.dk) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AD/1D-06151-019AFC74 for ; Thu, 06 Mar 2008 03:19:29 -0500 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: quoted-printable Date: Thu, 6 Mar 2008 09:19:24 +0100 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: OMG package support. Thread-Index: Ach/YsmfWuU60QVxRfKwK3P5Us6lSQ== To: Subject: OMG package support. From: mr@segtel.dk ("Mads Randstoft") I have been working with different OO systems for a while and one thing I really miss is an OMG specified package system. According to OMG a package is a namespace however with the important difference that you can make "package" accessible variables, classes and methods. The package access control makes the class, variable or method only accessible from other package members, acting as "public" inside the package but "private" if outside the package. Packages are open scopes meaning that new items can be added at any time, just like namespaces. Also of cause I would like a change to the current namespace proposal, or rather name resolution scheme, that will check names in current namespace before even build in names, so my own classes will override global classes unless I specifically uses ::classname instead of classname... -- Mads Randstoft