<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>var/log &#187; backslash</title>
	<atom:link href="http://www.varslashlog.com/tag/backslash/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.varslashlog.com</link>
	<description>Yet another weblog</description>
	<lastBuildDate>Sat, 12 Sep 2009 13:34:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PHP gets a new namespace separator: \</title>
		<link>http://www.varslashlog.com/2008/10/27/php-gets-a-new-namespace-separator/</link>
		<comments>http://www.varslashlog.com/2008/10/27/php-gets-a-new-namespace-separator/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 23:20:24 +0000</pubDate>
		<dc:creator>AHSauge</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[backslash]]></category>
		<category><![CDATA[namespace]]></category>
		<category><![CDATA[separator]]></category>

		<guid isPermaLink="false">http://www.varslashlog.com/?p=22</guid>
		<description><![CDATA[No, I&#8217;m not joking. As of last Saturday, the development team of PHP decided that backslash will be the new namespace separator in PHP, replacing :: which has been used up until now. The reason for this is quite alarming to be honest. A bug.
Because PHP basically fail to distinct between for instance foo::bar(); as [...]]]></description>
			<content:encoded><![CDATA[<p>No, I&#8217;m not joking. As of last Saturday, <a href="http://news.php.net/php.internals/41374" target="_blank">the development team of PHP decided</a> that backslash will be the new namespace separator in PHP, replacing :: which has been used up until now. The reason for this is quite alarming to be honest. <em>A bug</em>.<span id="more-22"></span></p>
<p>Because PHP basically fail to distinct between for instance foo::bar(); as in namespace foo with function bar vs. class foo with static function bar they&#8217;ve just decided to scrap the whole :: thing and instead use backslash. I can&#8217;t tell you how stupid I think this really is. Instead of actually fixing the problem, faulty look-up, they&#8217;ve taken the very easy way out. This just adds to the inconsistencies for PHP. There are several programing languages that I know of that don&#8217;t have these problems, and none of them have namespace separation in this way. Actually, I can&#8217;t even remember ever seeing any language using backslash for anything other than escaping, but that might just have something to do with other languages being <em>consistent</em>. This quote from a <a title="Comment on slashdot about the new namespace separator" href="http://developers.slashdot.org/comments.pl?sid=1008291&amp;cid=25522773" target="_blank">comment on slashdot</a> really says it all:</p>
<blockquote><p>Java:<br />
Attribute/Method access: foo.bar<br />
Static method access:    Foo.bar<br />
Package access:          foo.bar.baz</p>
<p>C#:<br />
Attribute/Method access: foo.bar<br />
Static method access:    Foo.bar<br />
Namespace access:        foo.bar.baz</p>
<p>Python:<br />
Attribute/Method access: foo.bar<br />
Static method access:    Foo.bar<br />
Module access:           foo.bar.baz</p>
<p>PHP:<br />
Attribute/Method access: $foo-&gt;bar<br />
Static method access:    Foo::bar<br />
Namespace access:        foo\bar\baz</p></blockquote>
<p>Now I&#8217;m not quite done here. If you look at the <a title="Request for Comments: Namespace Separators" href="http://wiki.php.net/rfc/namespaceseparator" target="_blank">RFC at PHP about the change</a> they list &#8220;IDE compatibility&#8221; as criterion for the new namespace separator. This is just plain stupid. Who are you designing a language for, humans or IDEs? I would say it&#8217;s for humans, but it seems the PHP devs thinks otherwise &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.varslashlog.com/2008/10/27/php-gets-a-new-namespace-separator/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
