Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:14806 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3526 invoked by uid 1010); 10 Feb 2005 21:23:18 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 3492 invoked from network); 10 Feb 2005 21:23:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Feb 2005 21:23:18 -0000 X-Host-Fingerprint: 167.206.5.72 mta6.srv.hcvlny.cv.net NetCache Data OnTap 5.x Received: from ([167.206.5.72:19090] helo=mta6.srv.hcvlny.cv.net) by pb1.pair.com (ecelerity HEAD (r4105:4106)) with SMTP id DF/D2-27256-5C0DB024 for ; Thu, 10 Feb 2005 16:23:17 -0500 Received: from [192.168.1.2] (ool-44c7569b.dyn.optonline.net [68.199.86.155]) by mta6.srv.hcvlny.cv.net (iPlanet Messaging Server 5.2 HotFix 1.25 (built Mar 3 2004)) with ESMTP id <0IBP00LT0SQQNV@mta6.srv.hcvlny.cv.net> for internals@lists.php.net; Thu, 10 Feb 2005 16:23:15 -0500 (EST) Date: Thu, 10 Feb 2005 16:21:02 -0500 In-reply-to: <1108068700.20077.121.camel@localhost.localdomain> To: Andrei Zmievski Cc: Ante Drnasin , internals@lists.php.net Reply-to: john@coggeshall.org Message-ID: <1108070462.20077.129.camel@localhost.localdomain> Organization: Coggeshall.org MIME-version: 1.0 X-Mailer: Ximian Evolution 1.4.6 Content-type: text/plain Content-transfer-encoding: 7BIT References: <20050207141916.21665.qmail@lists.php.net> <1062509740.20050209103014@marcus-boerger.de> <20050209110525.1936.qmail@lists.php.net> <20050209164713.GC25360@gravitonic.com> <20050210080546.52065.qmail@lists.php.net> <20050210185558.GA64423@gravitonic.com> <1108068700.20077.121.camel@localhost.localdomain> Subject: Re: [PHP-DEV] Autoboxing in php 5.1 From: john@coggeshall.org (John Coggeshall) To be clear: Although I think this might be implemented as some sort of object I am not interested in making objects out of everything. All I want is this: function foo(Integer $a, Float $b, String $c, Boolean $d) { } and be able to introspect against that... how that ultimately gets implemented (likely PHP would auto-cast that to an int) doesn't matter to me... but the point here is I think the ability to have more *optional* meta-data associated with function declarations shouldn't be brushed off as nonsense when there are real benefits to the ability. John On Thu, 2005-02-10 at 15:51, John Coggeshall wrote: > > You did't answer my question. Why? > > I am def. a fan of this idea. I'd love to see internally a set of > Java-style objects representing the basic types in PHP. > > As for why I have two reasons: > > Although PHP is not a strongly-typed language and never will be, with > the introduction of type-hinting I feel that having a standard set of > objects representing the fundamental types in PHP will allow developers > of libraries to enforce the proper restrictions if they desire on the > types which end up in their functions. This further degree of control > over the architecture in a PHP class makes an architecture tighter and > easier to manage with growth. > > More importantly than the concept of type-hinting, the lack of typing > information is holding PHP back signifcantly in the realm of Web > Services. Although for PHP applications as a whole typing has proven > itself largely unnecessary, without it making PHP a viable and "simple" > language for the creation of web services isn't feasible. How am I to > create a WSDL document from a class I would like to expose as a web > service? Do you honestly expect me to hand-write a WSDL document for my > object and maintain that WSDL alongside code changes manually? WSDL > documents were designed to be generated automatically by the > architecture exposing the web service, and without any notion of typing > in PHP at all there is no viable way to really do this. > > Also let me point out that I am *not* suggesting that PHP become a typed > language. I am merely am suggesting that the ability for me to enforce > structure on my objects does indeed have a real benefit without breaking > backward compatibility or otherwise compromising the spirit of PHP. > > John