2012/6/29 Amaury Bouchard <ama...@amaury.net>:
> Hello everybody,
>
> It's the first time I write on the internals mailing-list, so let me
> introduce myself quickly. I'm a french and canadian CTO, working in Paris.
> I lead some PHP projects (mainly the Temma framework and FineFS data
> replication system).
> I begin to learn PHP's internal engine, backed by Pierrick Charron.
>
> I would like to do an RFC proposal (see below for the associated patch).
> I was thinking about "what if PHP was a full-object language?". Like, for
> example, how will we write the simplest code, assuming that objects are
> handled using pointers since PHP 5.
>
> Take a look at this code:
>   $a = 3;
>   $b = $a;
>   $a++;
>
> $b still contains the value 3.
>
> Now, if we imagine that even the integer data type is managed in an object,
> the same code will produce two pointers to the same object. Thus, $b will
> have the value 4, as $a.
> So, in this imaginary world, we would need to do a lot of object cloning. I
> wondered how this could be less painful, and I thought about the Pascal
> language's affectation operator (:=).
>
> Then we would be able to write something like that:
>   $a = 3;
>   $b := $a;
>   $c = $a;
>   $a++;
>
> $a equals 4, as $c. But $b equals 3.
>
> Back in the real world, we are not cloning objects very often. But, like
> many other syntactic sugars (as the short array syntax), I think it could
> be handy in some circumstances.
>
> There is a patch for this evolution, written by Pierrick.
> Full source code: https://github.com/adoy/php-src/tree/amaury-clone
> Code diff:
> https://github.com/adoy/php-src/commit/5107c0355c50381c7e67230cdc9f563eb3936a15
>
>
> I'm looking forward to your advices.
>
> Cheers!
>
> Amaury

Hi Amaury,

I have to agree with Johannes here, it looks like a benefit only in a
very few cases but introduces a lot of side changes like IDE syntax
parsing, to cite only one.
I really doubt the little benefit of such a change outperforms the
extra work involved.

Cheers,
Patrick

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to