Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:49766 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 29622 invoked from network); 19 Sep 2010 16:05:13 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Sep 2010 16:05:13 -0000 Authentication-Results: pb1.pair.com header.from=jbondc@openmv.com; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=jbondc@openmv.com; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain openmv.com from 64.15.152.204 cause and error) X-PHP-List-Original-Sender: jbondc@openmv.com X-Host-Fingerprint: 64.15.152.204 mail.ca.gdesolutions.com Received: from [64.15.152.204] ([64.15.152.204:53832] helo=mail.ca.gdesolutions.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 1B/92-15948-5B4369C4 for ; Sun, 19 Sep 2010 12:05:11 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.ca.gdesolutions.com (Postfix) with ESMTP id 59F525C52; Sun, 19 Sep 2010 12:05:07 -0400 (EDT) X-Virus-Scanned: amavisd-new at gdesolutions.com Received: from mail.ca.gdesolutions.com ([127.0.0.1]) by localhost (mail.ca.gdesolutions.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AaNSHEGB-cp9; Sun, 19 Sep 2010 12:05:07 -0400 (EDT) Received: from djbondc (modemcable083.208-56-74.mc.videotron.ca [74.56.208.83]) by mail.ca.gdesolutions.com (Postfix) with ESMTP id DBD6E5C43; Sun, 19 Sep 2010 12:05:06 -0400 (EDT) To: "'Ralph Schindler'" Cc: "'PHP internals'" References: <12df042bd98b449afa15c788b9083e51@localhost> <000001cb569a$232aa220$697fe660$@com> <4C93BDD6.50702@smashlabs.com> In-Reply-To: <4C93BDD6.50702@smashlabs.com> Date: Sun, 19 Sep 2010 12:05:05 -0400 Message-ID: <001501cb5814$6d797e20$486c7a60$@com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: ActWnGwtHrYboOMdQ5aDKYjnidEFGABcJQDg Content-Language: en-ca Subject: RE: [PHP-DEV] On how a little knowledge is completely useless. From: jbondc@openmv.com ("Jonathan Bond-Caron") On Fri Sep 17 03:13 PM, Ralph Schindler wrote: > Inline response: >=20 > On 9/17/10 1:57 PM, Jonathan Bond-Caron wrote: > > On Fri Sep 17 01:06 PM, Guilherme Blanco wrote: > >> > >> Another good example is to map your persistence data into your=20 > >> Entities. Doctrine 2 implements this and I think that way you can=20 > >> compare easily with the PHP code alternative. I'd like to ask you=20 > >> to compate the same Entity mapped through Annotations emulator and > using > >> raw PHP code: > >> CmsUser using Annotations: > >> > http://github.com/doctrine/doctrine2/blob/master/tests/Doctrine/Tests > >> / > >> M > >> odels/CMS/CmsUser.php > >> CmsUser using PHP code: > >> > http://github.com/doctrine/doctrine2/blob/master/tests/Doctrine/Tests > >> / O RM/Mapping/php/Doctrine.Tests.ORM.Mapping.User.php > >> > > > > You're basically bundling (M: Model, data& configuration, C: > Control, business logic / code) into a single class while the MVC=20 > pattern is all about separating M,V and C. >=20 > Jonathan, I think you are misinterpreting this code. There is no=20 > Controller (Front controller, or parameter mapping from $_POST or > $_GET) nor View responsibilities (echo) here. These are all Model > concerns: I'm not talking about "web mvc" and mapping urls to controllers.=20 There's another pattern where you have a controller (php class) and a = data model (sql schema, .xsd, ...)=20 Problem statement: How do I map class properties to a given data model = (sql schema, .xsd, ...)? Some believe (strong opinions) that using annotations to do this is not = a "good example", though abundant usage in java. It would better serve the discussion if "good" and "bad" was left out = and if annotations were presented and promoted in a more neutral way. If we take a more fun example, how is a swiss army knife useful? - It can be used to open cans of food. - It can be used to cut hair. - It can be used to shave in the morning. ... I have full faith in the ability of core developers to make their own = opinions on how annotations can be useful to the php community at large. = There are more things to be considered then technical arguments. The bigger emerging problem is the complete lack of "formal process" to = propose changes to php's syntax: a) How to write a proposal to be accepted for review b) How and by who the proposal will be reviewed c) Who makes the final decision (e.g. executive committee) to approve or = reject a proposal. Going back to annotations, the discussions seems to be bouncing from (a) = to (c) while it seems like we are still at (a). I've been following internals only for the past couple of years and I = don't know enough the history but it seems like it would be time to = write a document that defines a "formal process" to propose syntax = changes (Zend/zend_language_parser.y, ...?)=20 I'm more than willing to start writing a draft, e.g. a much simplified = version of: http://jcp.org/en/procedures/jcp2 Is this worth a try?=20