Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:49645 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 50641 invoked from network); 14 Sep 2010 17:25:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Sep 2010 17:25:49 -0000 Authentication-Results: pb1.pair.com smtp.mail=nate.abele@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=nate.abele@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.216.42 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: nate.abele@gmail.com X-Host-Fingerprint: 209.85.216.42 mail-qw0-f42.google.com Received: from [209.85.216.42] ([209.85.216.42:32932] helo=mail-qw0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id D3/13-33442-D10BF8C4 for ; Tue, 14 Sep 2010 13:25:49 -0400 Received: by qwb8 with SMTP id 8so216175qwb.29 for ; Tue, 14 Sep 2010 10:25:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:content-type :content-transfer-encoding:subject:date:message-id:to:mime-version :x-mailer; bh=CcrkY6rKxU94lPITE1kUOsWMvGOJGxYX/DrD3xV89g0=; b=ckc2ZEjjIY4zLJP+zvAmkXx4M3eTQlpFACFpVERo+q+wKMEixqunyGLHb17vWDNsoU MyptmtdssU00Ye88JJUrKt+qUXr9wFI6WXddN2xZRdYnYDJQv5itO1+G5hpUyrYCe1eI bf8M4yOKaoG76OiFgkE6hy4YP1PCvB8H4uMfk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:content-type:content-transfer-encoding:subject:date:message-id :to:mime-version:x-mailer; b=YLL8DLXlNbUUhvb/jCG1nnv81/zvWY6nTKU5OWs9KA/YHf1J68Itg2BHDZSWHlSnNz cPgxxc0PgFeX67ENs/epCt8OzItOKZwMDim32kQ8VAL6EBTYSHZnIoHaT9IOUl8Jwl4T lrknKW50nzVbKakz/EKtuJ8/snmzc4bL5PSr4= Received: by 10.224.29.4 with SMTP id o4mr164811qac.203.1284485146569; Tue, 14 Sep 2010 10:25:46 -0700 (PDT) Received: from [10.0.1.14] (rrcs-69-193-175-134.nyc.biz.rr.com [69.193.175.134]) by mx.google.com with ESMTPS id t18sm380022qco.8.2010.09.14.10.25.45 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 14 Sep 2010 10:25:45 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Date: Tue, 14 Sep 2010 13:25:42 -0400 Message-ID: <39505F13-655A-43AF-941E-77750B7F7201@gmail.com> To: PHP Development Mime-Version: 1.0 (Apple Message framework v1081) X-Mailer: Apple Mail (2.1081) Subject: Re: Re: PHP Annotations RFC + Patch From: nate.abele@gmail.com (Nate Abele) > > At 17:51 13/09/2010, Gustavo Lopes wrote: > >> On Mon, 13 Sep 2010 16:28:47 +0100, Zeev Suraski = wrote: > >> > >>> At 16:39 13/09/2010, Pierre Joye wrote: > >>>> You are not serioulsy suggesting to use phpdoc for runtime = annotation > >>>> support? Are you? > >>> > >>> I actually am (either that or get what you want done in some other > >>> way). It's a rare enough use case that I think it's a very = reasonable > >>> compromise. The disadvantages of adding a whole new branch of = syntax, > >>> for this rare use case, far outweigh its advantages - IMHO. > >> > >> Rare use case? Have you seen any recent Java framework? Or Java EE = 6? Or > >> design by contract in C#? A declarative programming style can be = very > >> handy. > > >=20 > > Framework code (as in code that actually goes into a framework, not = code =20 > > that uses a framework) represents a tiny percentage of the PHP = codebase =20 > > at large. Most of it is application code. > > >=20 >=20 > You misunderstood me. When I say the frameworks use annotation I don't = =20 > mean they use annotations in their own implementation (that's not =20 > particularly relevant for the reason you present). >=20 > What I mean is that the frameworks recognize annotations the = application =20 > code has so that the framework user can do stuff like injecting = objects, =20 > run methods in transactions or check post-conditions in a declarative =20= > fashion, by adding annotations. >=20 > By the way, you ignored the rest of the e-mail. >=20 > How do you evaluate the complexity/return of features such as = annotations =20 > with that of e.g. LSB? Why are they not adequate for PHP, but may be = for =20 > other languages? I do not understand this. I see no one other than Symfony / Doctrine people pushing for this = annotations patch. How can this special-purpose feature (which would add entirely new = language semantics in the form of an embedded micro-language) even be = open for discussion, when other, more generally-useful RFCs like = http://wiki.php.net/rfc/shortsyntaxforarrays were shot down on the basis = that they were hard to read and confusing for new developers? Sorry, but I don't see how this is even remotely close to being = appropriate for PHP. Maybe I'm missing something. :-) Thanks, - Nate