It's a pretty decent read, but the major point that his article about
the virtues of C misses a huge mark. Software written in C, when they
become of sufficient size become completely impossible to keep track of.
A function that is related to a zend_function struct could be placed
anywhere, in any file and can be named in any way. Finding it is like
looking for a needle in a haystack, then you add macros.
When I first started with working with the php-core I was doing
everything wrong because it's a big mess, that's what happens with C, it
has no organization requirements whatsoever and unless everyone who is
working on the project is highly organized in the same fashion it will
become a disorganized mess.
Sure, C++ adds a lot of things that *can* overly complicate things but
at the very least it requires organization, something that most projects
sorely need.
Even so, C++ is not the only object oriented language out there.
-Clint
On 1/11/2013 12:35 AM, Pierre Joye wrote:
No. C++ is horrible. Very good read:
http://damienkatz.net/2013/01/the_unreasonable_effectiveness_of_c.html
On Jan 11, 2013 5:06 AM, "Clint Priest" <cpri...@zerocue.com> wrote:
Oooh, a rewrite? Can we write it in an object oriented language this
time? Please? Pretty Please???
:D
On 1/10/2013 9:49 PM, guilhermebla...@gmail.com wrote:
Stas,
I totally agree and Pierrick and I faced all these problems during the
creation of patch.
If PHP doesn't all have support required for a given feature, let's just
not only discuss feature, but also the required support too. Named
parameters is a great example. I'd also name another one,
ReflectionNamespace; namespaces are converted to strings and attached to
their classes during compile time and you can never reflect over them to
grab for example their names.
I even mentioned to Andi back in 2010 that ZE gets re-written every 5
years. That happened in 2000, 2005 and we're now hitting walls because of
"monster" changes required to implement feature A or B. Maybe it's time to
consider a rewrite again?
Cheers,
On Thu, Jan 10, 2013 at 3:36 PM, Stas Malyshev <smalys...@sugarcrm.com>
<smalys...@sugarcrm.com>wrote:
Hi!
I strongly suggest to anyone following the (too many) threads about
annotations to try the C# annotation and see what it allows. It goes
As far as I can see, C# annotations rely on two very important things:
1. Compiler support. Compiler really knows a lot about what annotations do.
2. Extensive library support. Annotations themselves are just passive
metadata, what makes them work is .net framework that uses them.
This means to make annotations as useful in PHP we would have to have
substantial support in the engine (including bytecode caching
provisions, etc.) and some libraries that require very
latest-and-greatest version of PHP.
Another thing is that we're not having some features that are used
extensively in C# annotations, main being named parameters support.
I am saying this not to oppose the idea of annotations or the idea of
looking into C# and other languages (actually, I think anybody who talks
about it should look at least into what C# and Java do with it - and
also what Python does, which is completely different direction, just to
know other options). I'm just saying porting this to PHP may be less
than straightforward.
--
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
--
-Clint
--
-Clint