Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:46835 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 36750 invoked from network); 20 Jan 2010 10:59:26 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Jan 2010 10:59:26 -0000 Authentication-Results: pb1.pair.com smtp.mail=ronabop@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=ronabop@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.223.186 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: ronabop@gmail.com X-Host-Fingerprint: 209.85.223.186 mail-iw0-f186.google.com Received: from [209.85.223.186] ([209.85.223.186:64312] helo=mail-iw0-f186.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 63/27-29385-C02E65B4 for ; Wed, 20 Jan 2010 05:59:25 -0500 Received: by iwn16 with SMTP id 16so192003iwn.26 for ; Wed, 20 Jan 2010 02:59:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=+7Gq7bLeD1YvxhU8/JUPauY4yb4SzdGNMrTI+Qulals=; b=owbBidcX6v1snotWE0Y5CJfJecWgSpgjCWd+gah2MlVaHPj3lz9ggd/AyMnBNH2lNP tT9+aa8ik4gXGqLTR/O9xKYVmHdJ5YVsNvkZdw2DtdNpUn1POwfG42IoO6QibsvtS3sS fy72FN2aPdMfyT+JIJFWPE2ss3rBpES2GHJ2s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=w0hPuph204TrGhn93E467gLdx6bzExxd2YIGelIvDFePJtUA1ddPU+Y9S2SnWzk1t2 hqUEhXI1Ner9k6kRYbN37fIaS+P7VqLxzaa256kNmF8PhJ0Sci82S8f16llb9hqPnNB+ d7x3jehhXpWvnfrXlMoCtXyqBANtcewvsfyoU= MIME-Version: 1.0 Received: by 10.231.150.2 with SMTP id w2mr2032604ibv.83.1263985162296; Wed, 20 Jan 2010 02:59:22 -0800 (PST) In-Reply-To: <18C2D4B7-D346-48E7-AC34-BA2550AA7524@darkrainfall.org> References: <4B54FC87.8070106@zend.com> <4B55EE56.8040104@lerdorf.com> <4B55FA44.1060601@zend.com> <20100119190836.GA17124@panix.com> <4B5608B2.8050308@zend.com> <20100119195724.GA5597@panix.com> <4B561191.2040700@zend.com> <20100119225448.GG3978@phcomp.co.uk> <18C2D4B7-D346-48E7-AC34-BA2550AA7524@darkrainfall.org> Date: Wed, 20 Jan 2010 02:59:22 -0800 Message-ID: <6ca931441001200259g61003c4fr252076899a620210@mail.gmail.com> To: Gwynne Raskind Cc: Alain Williams , Stanislav Malyshev , Daniel Convissor , PHP Internals List Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [PHP-DEV] function call chaining From: ronabop@gmail.com (Ronald Chmara) Religious programming is the problem. On Tue, Jan 19, 2010 at 6:28 PM, Gwynne Raskind wrote: > On Jan 19, 2010, at 5:54 PM, Alain Williams wrote: >>>> $eep->oop()->ork()->ah()->ah(); >>>> >>>> the newcomer will have to spend significant time rummaging around the >>>> source code to figure out what classes are involved. >>> As opposed to: >>> $oop = $eep->oop(); >>> $ork = $oop->ork(); >>> $ah = $ork->ah(); >>> $ah2 = $ah->ah(); No amount of syntax change will alter the "true believer", it just creates new religions. New rituals, new syntax, new languages. To that end, I suggest a "trinity" operator, three colons in a row... ObjectIDont'Understand::methodIhaven'tread:::DoWhatIWant. When it fails, the failing will be on the part of the invocator, because the trinity is not bound by logic. Any bugs would question the faith, which is infallible, by definition. Backing up, maybe it's a bad idea to argue about compilers.... with people who haven't written them.