Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:14605 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 27945 invoked by uid 1010); 3 Feb 2005 22:56:24 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 27930 invoked from network); 3 Feb 2005 22:56:24 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Feb 2005 22:56:24 -0000 X-Host-Fingerprint: 66.80.117.3 longsword.omniti.com Linux 2.4/2.6 Received: from ([66.80.117.3:54623] helo=mail.omniti.com) by pb1.pair.com (ecelerity HEAD (r4105:4106)) with SMTP id F0/DC-10528-71CA2024 for ; Thu, 03 Feb 2005 17:56:24 -0500 DomainKey-Status: good DomainKey-Signature: q=dns; a=rsa-sha1; c=nofws; s=test; d=omniti.com; h=Received:In-Reply-To:References:Mime-Version:Content-Type:Message-Id:Content-Transfer-Encoding:Cc:From:Subject:Date:To:X-Mailer; b=FIEWmesMLMQmnMcRj4HrrbG0DLZfEdSqWRx/xLtbUAwbaTzf25zOXOZ8vdQQWweb ldSEGa9/fbnXS11dxXGtOHLs1oUT84Af5xi+YyZj0tKOlJLF1D673CzlZ+UJyvFP Received: from ([66.80.117.2:57151] helo=[10.80.116.150]) by mail.omniti.com (ecelerity HEAD) with SMTP id 80/2D-22836-B0CA2024 for ; Thu, 03 Feb 2005 17:56:14 -0500 In-Reply-To: <04da01c50a42$f1d20780$0300000a@pc> References: <00dd01c50a22$523a3780$0300000a@pc> <04da01c50a42$f1d20780$0300000a@pc> Mime-Version: 1.0 (Apple Message framework v619.2) Content-Type: text/plain; charset=ISO-8859-1; format=flowed Message-ID: <85fbbef6debb33bc162646326ca8660a@omniti.com> Content-Transfer-Encoding: quoted-printable Cc: George Schlossnagle , internals@lists.php.net Date: Thu, 3 Feb 2005 17:54:34 -0500 To: =?ISO-8859-1?Q?Terje_Sletteb=F8?= X-Mailer: Apple Mail (2.619.2) Subject: Re: [PHP-DEV] PHP 5.1 From: george@omniti.com (George Schlossnagle) On Feb 3, 2005, at 5:51 PM, Terje Sletteb=F8 wrote: >> From: "George Schlossnagle" > > By the way, I have your book ("Advanced PHP Programming"), which I=20 > found > very good. :) I've also recently got Andi Gutmans, Stig S. Bakken and=20= > Derick > Rethans book, "PHP 5 Power Programming", which, from what I've seen of=20= > it, > also looks very good, and I'm looking forward to reading it. Thanks. I've heard good things about Andi, Stig and Derick's book as=20 well. > >> On Feb 3, 2005, at 1:58 PM, Terje Sletteb=F8 wrote: >>> Hm, I'm surprised by this response from someone who's name I=20 >>> recognise >>> as an >>> active PHP contributor. The answer strikes me as either arrogant=20 >>> and/or >>> ignorant (note: I'm not saying you are that, but that's how the = reply >>> comes >>> across, given what what operator overloading is about). As I've >>> pointed out >>> in other postings in this thread, operator overloading is about much >>> more >>> than "just" "syntactic sugar". In C++, for example, it enables >>> important >>> things such as function objects (being able to pass an object to a >>> function, >>> for example, and have it behave as a function, enabling functional >>> programming, as well). This is not possible (possibly without = jumping >>> through major hoops) in PHP. > >> That's because functions are not first-class objects in PHP. You can >> do this same thing in straight C without operator overloading. While >> I'm happy (for you) that you like operator overloading, the view that >> it is inherently evil and leads to obtuse, magical code is not >> relegated to us PHP luddites. These ideas have all been discussed in >> depth long before you appeared on the scene to decry our lack of >> interest in 'evolving' the language to your liking. > > Yes, I know that operator overloading, as well as statically > typed/dynamically typed, type checking, etc. are hotly debated topics,=20= > and > that can be healthy, at least as long as there are reasonable=20 > arguments for > either side. What I decried wasn't this thing in particular, and I'm > relatively new to the PHP online community, but from the responses I=20= > got, > felt something of a complacency ("The language is good enough as it=20 > is. Who > needs advanced features. They may be misused. Etc."), and I guess I=20 > reacted > to that, because I find it rather different in the C++ mailing lists=20= > and > newsgroups, where there's often lively discussions about the evolution=20= > of > the language. The real problem is that there's a constant influx of (usually)=20 well-meaning people like yourself who come to the lists to propose=20 ideas which have been discussed in depth numerous times before and=20 which have been discarded (for better or worse, my personal opinion is=20= for better in this case). 'Prone to misuse' and 'tends to result in=20 unmaintainable code' are (in my exposure) two pretty common reasons=20 that people dislike operator overloading. At any rate, it's been discussed before and shelved, long before you=20 came on the scene. Even though the topic is new for you in this venue,=20= it's old for many other people, and it gets annoying to rehash the same=20= topics every couple months when someone new joins the list. The=20 discussions are all in the archives though, if you want to see the=20 less-reactionary roots of the rejections. George=