Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:35598 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 92756 invoked by uid 1010); 19 Feb 2008 16:58:32 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 92741 invoked from network); 19 Feb 2008 16:58:32 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Feb 2008 16:58:32 -0000 Authentication-Results: pb1.pair.com smtp.mail=helly@php.net; spf=unknown; sender-id=unknown Authentication-Results: pb1.pair.com header.from=helly@php.net; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 85.214.94.56 as permitted sender) X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 85.214.94.56 aixcept.net Linux 2.6 Received: from [85.214.94.56] ([85.214.94.56:59877] helo=h1149922.serverkompetenz.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A1/74-55225-6BA0BB74 for ; Tue, 19 Feb 2008 11:58:32 -0500 Received: from dhcp-172-28-202-237.zrh.corp.google.com (unknown [193.142.125.1]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by h1149922.serverkompetenz.net (Postfix) with ESMTP id 411661B3671; Tue, 19 Feb 2008 17:58:27 +0100 (CET) Date: Tue, 19 Feb 2008 17:58:29 +0100 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <985507326.20080219175829@marcus-boerger.de> To: Rasmus Lerdorf CC: internals@lists.php.net In-Reply-To: <47BAFCD7.5050008@lerdorf.com> References: <001c01c87264$3c01b4e0$b4051ea0$@de> <58510.98.193.37.55.1203374232.squirrel@www.l-i-e.com> <1e12984d0802181536t7fceafsef1975341ec29aff@mail.gmail.com> <75883486.20080219153222@marcus-boerger.de> <47BAFCD7.5050008@lerdorf.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] RFC: Traits for PHP From: helly@php.net (Marcus Boerger) Hello Rasmus, not really. We can have a table that keeps track of which class was declared in what file. Then we could actually break down files into class definitions and only import the requested part. In a perfect world each class would be in its own file. A file would only create a single class and nothing more or contain the code to generate output, probably some short, flat procedural code. Then each of these files would get compiled and cached. And loaded from those output generating files... marcus Tuesday, February 19, 2008, 4:59:19 PM, you wrote: > Marcus Boerger wrote: >> Hello Stefan, >> >> any dynamic aspect of a class has brought us to problems in inheritance >> and required us to design the objct/compile model in a way that >> inheritance often is done at run time. Imo traits are a way out of this. >> In fact I'd love to issue a deprecated message as soon as class is found >> outside of a main block. > That would mean deprecating autoload as well since autoloading a class > is effectively the same as defining it outside of the main block. > -Rasmus Best regards, Marcus