Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:66010 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 90241 invoked from network); 20 Feb 2013 00:08:56 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Feb 2013 00:08:56 -0000 Authentication-Results: pb1.pair.com smtp.mail=morrison.levi@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=morrison.levi@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.176 as permitted sender) X-PHP-List-Original-Sender: morrison.levi@gmail.com X-Host-Fingerprint: 209.85.214.176 mail-ob0-f176.google.com Received: from [209.85.214.176] ([209.85.214.176:61233] helo=mail-ob0-f176.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 3B/E5-61103-71414215 for ; Tue, 19 Feb 2013 19:08:56 -0500 Received: by mail-ob0-f176.google.com with SMTP id v19so7175021obq.35 for ; Tue, 19 Feb 2013 16:08:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=Q4BqrFbjSAmlfiQsYdzeEibLG+vOWUdBCbN76nKKP4k=; b=mUKm1xHxW3TImeqytmwhzzHjBAm/eUErMTUN3EP+b1C8qEeAIkQoJgDvCA+4m8ts03 uNfkSG91ro4PLXBCAjYEG/S1e0eLBICNjqjml5UIvKOQNPXfUaR2yC5U1zCk2RbpRe0A psMnxxNlMiuPyjgh9VES3+bUUBp9txbbYq80P2CFT7RQRQYmceKJh2jID+Bo73xV8OSF 4BnFBWFI4t/L5Nd/gU6yZycnSYGW7naBgmmbw5yxZf5Yy9/omncTsaGh7EbXoYVps3CH f6lKD21DPTomsILMBFX4bUGEyHYSe9VfHg3cuXrGCnaNUj/Kx3NvSrthY6QJf1glFMEq IXqQ== MIME-Version: 1.0 X-Received: by 10.60.1.73 with SMTP id 9mr4268356oek.129.1361318933206; Tue, 19 Feb 2013 16:08:53 -0800 (PST) Received: by 10.76.24.234 with HTTP; Tue, 19 Feb 2013 16:08:53 -0800 (PST) In-Reply-To: <51240F9D.8020409@lerdorf.com> References: <-1452447624906595030@unknownmsgid> <51240F9D.8020409@lerdorf.com> Date: Tue, 19 Feb 2013 17:08:53 -0700 Message-ID: To: Rasmus Lerdorf Cc: Zeev Suraski , Nikita Nefedov , "internals@lists.php.net" Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [PHP-DEV] Dropping requirement for `function` keyword for methods in classes/interfaces/etc From: morrison.levi@gmail.com (Levi Morrison) >> The key question for me is: does removing it hurt PHP in any way? And >> for me, the answer is a clear and resounding no. I do not grep code >> for method definitions: I know exactly where they are and so will my >> IDE if I happen to not be using vim. And for those who like to grep >> for method definitions they can keep the keyword present. > > Except when I come along and try to grok your code. I rarely search my > own code. Protip: use an IDE. No, I'm serious. I work from the command-line a lot. I grep, awk and sed a lot of things on a weekly (sometimes daily) basis. However, it does not replace a good IDE. Ever done a replace from the command line only to find out you messed up some binary files and/or git/svn information? Happens all the time when I don't use an IDE; good IDE's don't make that mistake. Let's stop pretending that the vast majority of PHP users actually grep source code looking for `function foo`. They don't. *They don't even know how to use grep.* However, every PHP developer has to write `function` and more importantly they have to read `function` over and over again. --- Does that mean that I think `function` ABSOLUTELY SHOULD BE made optional? No. I don't. Am I tired of everyone complaining about this particular issue and pointing to the fact that some external tool won't work if you remove the otherwise unnecessary keyword? Yes, I am. Take a step back and look at your argument guys: you may have strong personal feelings about it, but it's a pretty thin argument.