Why is it every time this comes up people need to get butt hurt and passionate? Re-read past discussions and provide new arguments or move on. This is likely a feature that will never exist, but don't worry... You can still make websites using PHP :) On Feb 25, 2012 6:59 PM, "Kris Craig" <kris.cr...@gmail.com> wrote:
> Inline, we go.... > > --Kris > > > On Sat, Feb 25, 2012 at 4:54 PM, Stas Malyshev <smalys...@sugarcrm.com > >wrote: > > > Hi! > > > > > > I'm well aware that this has been discussed before, Stas. However, > >> you're mischaracterizing those previous conversations. It has never > >> been proven that optional strict typing doesn't work. You've made the > >> same arguments against it, but those arguments have counter-arguments > >> that are also viable. > >> > > > > I'm not sure what you mean by "proven". You expect rigorous mathematical > > proof? You're not getting one. If you have something new to say with > regard > > to the arguments that were brought up 10 times already - ok, go ahead. > But > > please read them first. > > > Another logical fallacy. Cognitive dissonance. Either there is "rigorous > mathematical proof" or a statement is completely unproven (and/or cannot be > proven). > > In fact, you haven't proven your point by any standard, rigorous or > otherwise. There is no basis for suggesting that it cannot be done. > You've clearly stated that you don't think it *should* be done, but you > haven't viably demonstrated that it *can't* be done, or that it would > "break" PHP as we know it. > > > > > > people keep asking for it. It keeps coming up because, despite > >> belittling and dismissive comments made by yourself and a few others, > >> people continue to see that there is, in fact, a valid argument for > >> implementing this. It shows that you have never been able to convince > >> those who don't already agree with you that this is impossible. > >> > > > > Or it's coming up because people don't bother to read past discussions > and > > think they are first who thought "let's put strict typing in PHP" and > only > > reason why it's not there because nobody was smart enough to think about > > it. It's not so. It was repeatedly discussed and rediscussed. If you have > > new argument - fine, we'd all be happy to hear it. So far I didn't hear > one > > though. Please let us hear it. > > > No, it's coming up because people have read these past discussions and > still think it's a reasonable goal that deserves further consideration. > Your assumption that anyone who disagrees with you must not have read or > even be aware of the existence of previous threads on this topic is a good > example of your arrogant belittling of and disrespect toward them. > > Your premise seems to rely on the notion that, since this was previously > discussed but not implemented, this idea was resoundingly rejected. On the > contrary, it looks to me more like it either fizzled or was punted each > time, but no consensus was ever reached. Therefore, further discussion is > warranted. The fact that this was discussed previously does not make this > topic any less legitimate. > > > > > > remotely like that. On the contrary, the PHP language would remain > >> largely unchanged; we'd merely be adding a new element to it. > >> > > > > It doesn't work that way. Language is a complex construct, with all parts > > influencing each other, thinking you can just add strict typing somewhere > > in the corner and nothing changes is a dangerous illusion. It would not > > work. If you type function arguments, you should also type all the > > variables that could end up as the function arguments, all the functions > > returning into those arguments and all the operators and functions that > do > > any transformations over those things. Otherwise it is guaranteed to blow > > up in runtime. After doing that, you've got yourself a strictly typed > > language. Absent compiler, though, such language would be quite hard to > > operate - how do you know your code correctly uses all the types some > > library wants? How do you know next version doesn't change any types > > without you noticing? etc., etc. > > > You're operating on a number of unfounded assumptions here (a "house of > cards" if you will). First, nobody is saying that this wouldn't be a > significant undertaking at the core development level. We all agree that > it would be. However, you're once again introducing cognitive dissonance > into this. The same logic you're using could be used to say that solid OO > classes shouldn't be implemented because it would then render procedural > scripting impossible. After all, "all parts influence each other," as you > put it. However, everything didn't blow up when PHP 5 was released. > People can still write purely procedural code just like they did before. > > Language is complex, yes; but it is also flexible. We've already discussed > previously in this thread how these interactions between strinct and > dynamic functions could take place. > > So, your argument that this would be "guaranteed to blow up in runtime" and > that, therefore, we would be stuck with a purely strict-typed language is > based on a faulty premise. The house of cards collapses. > > Don't get me wrong; there are plenty of fine details that would need to be > figured out. But again, complexity != impossibility. It can be done, and > it can be done in a way that won't cause the world to come to an end. > > > > > > > Furthermore, I have spoken to numerous people who have complained about > >> PHP code being overly bulky and/or difficult to read due to its > >> mandatory dynamic typing. Your counter-argument to that was, > >> > > > > I think these people are mistaken. PHP code, as in any language, may be > > well written or purely written, however this has nothing to do with > dynamic > > typing. There are dynamically and statically typed languages, both have > > their uses. Static typing is well fit for compiled languages since > > compiling allows pre-execution type control and thus ensures no surprises > > in runtime. > > If you would like to explain yourself more in detail and specifically > > describe which code is "bulky and hard to read" due to dynamic typing - > > please do so. > > > PHP may not be compiled, but it does plenty of "pre-runtime" sanity checks. > That's when things like parse errors are caught. > > As for an example, please refer to earlier posts on this thread, as that > has already been provided. > > > > > > > > essentially, "Yeah, well they're all stupid!" No, they're not. They > >> > > > > If you're going to distort my words and assign me things that I never > said > > I would just stop this discussion and instead will silently delete > > everything you send. No sane discussion can be held in this manner, so > > please show respect to yourself and everybody participating and never do > > this again. > > > You should re-read your statements before you accuse others of distorting > them. Here's the exact quote of what you said: > > "If somebody finds PHP much more difficult to read than C++, well, he > obviously has a very different concept of reading than the rest of the > humankind." > > In other words, anyone who think PHP is harder to read is obviously not as > smart as the rest of the human race (at least when it comes to reading > comprehension). So yes, you were basically saying that these people are > stupid. You've been consistently belittling those who disagree with you, > like accusing all of them of being ignorant of previous threads on this > topic, etc. > > I stand by what I said. Much of your rhetoric consists of you looking down > your nose at everyone who disagrees with you. Don't dish it out of you > can't take it. ;P > > > > > > And again, you're using the, "If you don't like PHP, then get the hell > >> out and use a different language," argument (i.e. "If one needs strict > >> typed compiled language, one knows where to find plenty of them."). As > >> I said in a previous post, that argument carries ZERO weight with me, > >> and I'm not the only one who feels that way. > >> > > > > PHP is built on a certain principles, and people that build and maintain > > PHP would like to continue developing it along these principles. You > think > > the proper language should be based on different set of principles - it > is > > your right, however this language would not be PHP. There's nothing wrong > > with that, and pointing out that fact is not "dismissive". It is just a > > reminder that each language should have some principles. If you want to > > discuss why these principles are there - fine, but I mus warn you that it > > is rather unlikely that these principles will be thrown out and replaced > > with entirely new ones. > > > Another logical fallacy. You're attempting to redefine the debate on the > grounds that mandatory dynamic typing is one of the founding "principles" > that PHP stnads for, even though you have zero basis for making that claim > other than the fact that PHP in its current form does not support strict > typing (that same argument could be used to reject any new feature to PHP > that touches the language). That would be like saying that English is no > longer English because we've added some new words to the dictionary and > modified some of the grammar rules (Oxford Comma, anyone?). > > So no, we're not talking about turning PHP into a different language. > We're not tearing everything down and starting from scratch. Hell, what > we're talking about wouldn't even break compatibility with existing > scripts! This sort of radical hyperbole does not justify being dismissive > of those who are making a legitimate argument that you happen to disagree > with. It's not constructive, and it's probably hyperbole like this that > makes people less likely to continue discussion threads on this topic. > After all, I'm sure nobody here would like the idea of being seen as > trying to "kill PHP". > > > > > > > > should be discussed. So let's drop the arrogant, "We've already talked > >> about this stupid thing before," crap right here and now because it's > >> not going to change anything. > >> > > > > I would also ask you to please amend your tone and avoid name-calling, > > swearing and otherwise rude expressions on the list. I understand that > some > > topics can make one passionate, however I think remaining within the > bounds > > of polite and civilized tone of discussion is not too much to ask. > > > What name-calling, exactly? The word "arrogant" is an adjective, not a > noun. > > It sounds like you're trying to imploy the old, "I'm rubber, you're glue" > approach; i.e. hoping to cancel-out my criticism of your disrespectful tone > by repeated the same accusation toward me. I could then counter with the > classic, "Well you started it!" but that wouldn't serve any purpose, now > would it? > > Like I said before, if you are dismissive and disrespectful of the other > side, they in turn will develop a more hostile tone toward you. It's basic > human nature and perfectly understandable. If you've suddenly come around > and decided you want to have a respectful conversation, I'm all for it! > But you need to take responsibility for your own attitude and remember > that the opinions of those who disagree with you are no less valid than > your own. > > I'd really prefer that this thread not devolve into a cliche flame war. > That's probably what killed some of the past discussions. However, we've > procrastinated on this long enough IMHO. These extremely prevelent > concerns are not going to just "go away" and ignoring them or belittling > them won't change that. The status quo is rarely a blueprint for > perfection. =) > > --Kris > > > > -- > > Stanislav Malyshev, Software Architect > > SugarCRM: http://www.sugarcrm.com/ > > (408)454-6900 ext. 227 > > >