Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:59894 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 45203 invoked from network); 13 Apr 2012 18:32:29 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Apr 2012 18:32:29 -0000 Authentication-Results: pb1.pair.com header.from=smalyshev@sugarcrm.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=smalyshev@sugarcrm.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain sugarcrm.com designates 67.192.241.203 as permitted sender) X-PHP-List-Original-Sender: smalyshev@sugarcrm.com X-Host-Fingerprint: 67.192.241.203 smtp203.dfw.emailsrvr.com Linux 2.6 Received: from [67.192.241.203] ([67.192.241.203:40996] helo=smtp203.dfw.emailsrvr.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 7C/A4-35770-A31788F4 for ; Fri, 13 Apr 2012 14:32:28 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp20.relay.dfw1a.emailsrvr.com (SMTP Server) with ESMTP id CFA3725820A; Fri, 13 Apr 2012 14:32:22 -0400 (EDT) X-Virus-Scanned: OK Received: by smtp20.relay.dfw1a.emailsrvr.com (Authenticated sender: smalyshev-AT-sugarcrm.com) with ESMTPSA id 8DB43258146; Fri, 13 Apr 2012 14:32:22 -0400 (EDT) Message-ID: <4F887135.3070706@sugarcrm.com> Date: Fri, 13 Apr 2012 11:32:21 -0700 Organization: SugarCRM User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 MIME-Version: 1.0 To: Michael Morris CC: PHP Internals References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] A possible defining characteristic of PHP 6 ( was [off] PHP: a fractal of bad design ) From: smalyshev@sugarcrm.com (Stas Malyshev) Hi! > PHP's goal has always been KISS, but the decisions over the last few > years run contrary to that. Most onerous is, where Javascript, Java > and C have one scope resolution operator - a period - PHP has three > (->, \, :: ). The only possible backwards compat fix to that is to This is not true. C++ (I assume that is what you mean by C) has -> and . and ::. Of course, when you say "scope resolution", you mean a number of different things. Javascript does not have namespaces at all - they use huge objects for that instead, but Javascript is not OO so totally different approach. Java does use . for everything, but I'm not sure it's actually for the best. > That would restore simplicity, and two of the operators would die off > (my money is on :: and \ dying) in common use. The engine No it would not restore simplicity. If you read the history of why \ came into being (I know, nobody ever would do that, unless somebody writes a fantasy book about it with zombies and vampires, but let's assume for the sake of discussion) you'd see that initially we would have used ::, but that created a number of ambiguities which people though would be confusing. I personally think we could have lived with it and worked around it for the sake of better esthetics but the community decided simplicity is more important, so it was made so. -- Stanislav Malyshev, Software Architect SugarCRM: http://www.sugarcrm.com/ (408)454-6900 ext. 227