<?xml version="1.0" encoding="ISO-8859-1"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xml:lang="en-US">
	<title>S2kDesigns Technical Blog</title>
	<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php" />
	<modified>2010-07-29T22:03:24Z</modified>
	<author>
		<name>Sandeep</name>
	</author>
	<copyright>Copyright 2010, Sandeep</copyright>
	<generator url="http://www.sourceforge.net/projects/sphpblog" version="0.5.1">SPHPBLOG</generator>
	<entry>
		<title>Mysql: How to drop a Unique Constraint?</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100603-033400" />
		<content type="text/html" mode="escaped"><![CDATA[ALTER TABLE `test_table` DROP INDEX `subject`<br />where test_table is the table name and subject is the column name]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100603-033400</id>
		<issued>2010-06-03T00:00:00Z</issued>
		<modified>2010-06-03T00:00:00Z</modified>
	</entry>
	<entry>
		<title>How to find world writable directories by &quot;find&quot; command?</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100515-074027" />
		<content type="text/html" mode="escaped"><![CDATA[ find . -type d -perm -a+w -exec ls -lah {} \; &gt; ww.txt]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100515-074027</id>
		<issued>2010-05-15T00:00:00Z</issued>
		<modified>2010-05-15T00:00:00Z</modified>
	</entry>
	<entry>
		<title>perl - handling sigint</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100514-111550" />
		<content type="text/html" mode="escaped"><![CDATA[Write a small Perl program that waits for 30 seconds and exits with printing “Bye”. If interrupted by any key before 30 second then print “Hello” before exiting.<br /><br />perl -e &quot;$SIG{INT}= sub {print &#039;Hello&#039;;exit;};for ($i=0;$i&lt;30;$i++){sleep 1;}; print &#039;bye&#039;;&quot;]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100514-111550</id>
		<issued>2010-05-14T00:00:00Z</issued>
		<modified>2010-05-14T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Perl Important links</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100514-094547" />
		<content type="text/html" mode="escaped"><![CDATA[Remove repeated characters from a string - <a href="http://www.perlmonks.org/?node_id=353072" target="_blank" >http://www.perlmonks.org/?node_id=353072</a><br /><br />How to find and remove duplicate elements from an array? - <a href="http://www.perlmonks.org/?node_id=90493" target="_blank" >http://www.perlmonks.org/?node_id=90493</a><br /><br />perlfaqs - <a href="http://perldoc.perl.org/perlfaq4.html" target="_blank" >http://perldoc.perl.org/perlfaq4.html</a><br /><br />perl references - <a href="http://www.sdsc.edu/~moreland/courses/IntroPerl/docs/manual/pod/perlref.html" target="_blank" >http://www.sdsc.edu/~moreland/courses/I ... rlref.html</a><br /><br />perl tuts - <a href="http://perldoc.perl.org/index-tutorials.html" target="_blank" >http://perldoc.perl.org/index-tutorials.html</a>]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100514-094547</id>
		<issued>2010-05-14T00:00:00Z</issued>
		<modified>2010-05-14T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Perl - Difference Between my local our</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100514-094321" />
		<content type="text/html" mode="escaped"><![CDATA[The variables declared with my() are visible only within the scope of the block which names them. They are not visible outside of this block, not even in routines or blocks that it calls. <br /><br />local() variables, on the other hand, are visible to routines that are called from the block where they are declared. <br /><br />Neither is visible after the end (the final closing curly brace) of the block at all.<br /><br /><br />Whereas our() has Package scope.]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100514-094321</id>
		<issued>2010-05-14T00:00:00Z</issued>
		<modified>2010-05-14T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Windows 7: I want WinXP Style back</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100413-044428" />
		<content type="text/html" mode="escaped"><![CDATA[<a href="http://www.howtogeek.com/howto/windows-7/make-the-windows-7-taskbar-work-more-like-windows-xp-or-vista/" target="_blank" >http://www.howtogeek.com/howto/windows- ... -or-vista/</a>]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100413-044428</id>
		<issued>2010-04-13T00:00:00Z</issued>
		<modified>2010-04-13T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Windows7 How to add the Quicklaunch Toolbar</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100413-044250" />
		<content type="text/html" mode="escaped"><![CDATA[Right-click on an open area of the taskbar, and choose Toolbars \ New Toolbar from the menu.<br />You should probably also unlock the taskbar at this point.<br />paste the following path into the location bar:<br /><br />%appdata%\Microsoft\Internet Explorer\Quick Launch<br /><br />The normal Quick Launch that we’re used to doesn’t have text, so right-click on the dotted lines and uncheck “Show Text” as well as “Show Title” from the menu.]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100413-044250</id>
		<issued>2010-04-13T00:00:00Z</issued>
		<modified>2010-04-13T00:00:00Z</modified>
	</entry>
	<entry>
		<title>opensubtitles.org oscar not working - resolved</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100322-002804" />
		<content type="text/html" mode="escaped"><![CDATA[<a href="http://trac.opensubtitles.org/projects/opensubtitles/wiki/XMLRPC" target="_blank" >http://trac.opensubtitles.org/projects/ ... iki/XMLRPC</a><br /><br />change <a href="http://www.opensubtitles.org" target="_blank" >www.opensubtitles.org</a> to api.subtitles.org in OSCAR&#039;s Preferences tab]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100322-002804</id>
		<issued>2010-03-22T00:00:00Z</issued>
		<modified>2010-03-22T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Find Joomla Module Positions</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100320-013924" />
		<content type="text/html" mode="escaped"><![CDATA[In Joomla there is a hidden core function which once activated displays a layer on a Joomla website which shows you exactly the template positions currently used. <br /><br /><br />To activate this function you just need to add ?tp=1 to the end of your current Joomla address. As an example take a look at the following link: <a href="http://www.dart-creations.com?tp=1" target="_blank" >http://www.dart-creations.com?tp=1</a> As you can see, you can know see all the positions which are template makes use of. You can use this on any Joomla version, on any Joomla site and on any Joomla page (though you might need to use &amp;tp=1). The following parameters can be used:  <br />?tp=1 (for horizontal view)<br />?tp=-1 (for no wrapper niew)<br />?tp=0 (for normal view - no view of positions)]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100320-013924</id>
		<issued>2010-03-20T00:00:00Z</issued>
		<modified>2010-03-20T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Duplicate a Table using Javascript</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100206-050337" />
		<content type="text/html" mode="escaped"><![CDATA[function addLocationRow() {<br /><br />      var nonpTbl  = document.getElementById(&#039;tblLoc1&#039;);<br />      var newRow   = nonpTbl.cloneNode(true);  <br />      var tds      = newRow.getElementsByTagName(&#039;td&#039;);<br />      var currLen  = parseInt(document.getElementById(&#039;totalLocs&#039;).value);<br />      currLen++;<br />      alert(&#039;currlen = &#039; + currLen);<br />      for (var i=0; i &lt; tds.length; i++) {<br />        var td = tds<i>;<br />        var input = (td.getElementsByTagName(&#039;input&#039;))[0];<br />        var currName;    <br />        if (input) {<br />             currName = input.name;<br />            var new_name = currName.replace(/AOLF_\d_(.*)/, &quot;AOLF_&quot; + currLen + &quot;_$1&quot;);<br />            input.name = new_name;<br />            input.value = &quot;&quot;;<br />        }<br />        var sel = (td.getElementsByTagName(&#039;select&#039;))[0];<br />        if (sel) {<br />             currName = sel.name;<br />            var new_name = currName.replace(/AOLF_\d_(.*)/, &quot;AOLF_&quot; + currLen + &quot;_$1&quot;);<br />            sel.name = new_name;<br />            sel.options[0].selected = true;<br />        }<br />      <br />      }<br />      var ntr = document.createElement(&#039;tr&#039;);<br />      var ntd = document.createElement(&#039;td&#039;);<br />      ntd.appendChild(newRow);<br />      ntr.appendChild(ntd);<br />      nonpTbl.parentNode.parentNode.appendChild(ntr);<br />      var val = parseInt(document.getElementById(&#039;totalLocs&#039;).value);<br />      val++;<br />      document.getElementById(&#039;totalLocs&#039;).value = val;<br />       //alert(&#039;val = &#039; + val + &#039; - &#039; + document.getElementById(&#039;totalNonPhysician&#039;).value);<br />      return false;<br />}]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100206-050337</id>
		<issued>2010-02-06T00:00:00Z</issued>
		<modified>2010-02-06T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Duplicate a row using javascript</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100206-050301" />
		<content type="text/html" mode="escaped"><![CDATA[function addNonPhysicianRow() {<br /><br />      var nonpTbl = document.getElementById(&#039;NPTbl&#039;);<br />      var trs = nonpTbl.getElementsByTagName(&#039;tr&#039;);<br />      var len = trs.length - 1;<br />      var lastRow  = trs[len];<br />      var newRow   = lastRow.cloneNode(true);  <br />      var tds = newRow.getElementsByTagName(&#039;td&#039;);<br />      var currLen = len - 3;<br />      currLen++;<br />      for (var i=0; i &lt; tds.length; i++) {<br />        var td = tds<i>;<br />        if (i == 0) {<br />            td.innerHTML = td.innerHTML.replace(/Third /, &quot;&quot;);<br />        }<br />        var input = (td.getElementsByTagName(&#039;input&#039;))[0];<br />        var currName;    <br />        if (input) {<br />             currName = input.name;<br />            var new_name = currName.replace(/NNP_\d_(.*)/, &quot;NNP_&quot; + currLen + &quot;_$1&quot;);<br />            input.name = new_name;<br />        }<br />        var sel = (td.getElementsByTagName(&#039;select&#039;))[0];<br />        if (sel) {<br />             currName = sel.name;<br />            var new_name = currName.replace(/NNP_\d_(.*)/, &quot;NNP_&quot; + currLen + &quot;_$1&quot;);<br />            sel.name = new_name;<br />        }<br />      <br />      }<br />      nonpTbl.appendChild(newRow);<br />      var val = parseInt(document.getElementById(&#039;totalNonPhysician&#039;).value);<br />      val++;<br />      document.getElementById(&#039;totalNonPhysician&#039;).value = val;<br />       //alert(&#039;val = &#039; + val + &#039; - &#039; + document.getElementById(&#039;totalNonPhysician&#039;).value);<br />      return false;<br />}]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100206-050301</id>
		<issued>2010-02-06T00:00:00Z</issued>
		<modified>2010-02-06T00:00:00Z</modified>
	</entry>
	<entry>
		<title>CS1010: Newline in Constant&quot; Error Message - fixed</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry100120-010104" />
		<content type="text/html" mode="escaped"><![CDATA[CS1010: Newline in Constant&quot; Error Message<br /><br />I got this error from asp.net application and here is the solution<br /><br />Modify string as like<br /><br />      string strValue = &quot;Test value&quot;;<br />      string strAll = &quot;&lt;SCRIPT lanquage=&#039;JScript&#039;&gt;window.alert(&#039;&quot; + strValue + &quot;&#039;);&lt;&quot;+&quot;/SCRIPT&gt;&quot;;<br />More..<br /><a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;827420" target="_blank" >http://support.microsoft.com/default.as ... -US;827420</a><br /><br />&quot;This behavior is by design&quot;<br /><br />Why??<br /><br />because the compiler things that the &lt;/SCRIPT&gt; in strAll is the closing tag for the &lt;script runat=&quot;server&quot;&gt;<br />=========<br />&lt;script runat=&quot;server&quot;&gt;<br />private void Page_Load(object sender, System.EventArgs e)<br />{<br />string strValue = &quot;Test value&quot;;<br />string strAll = &quot;&lt;SCRIPT lanquage=&#039;JScript&#039;&gt;window.alert(&#039;&quot; + strValue + &quot;&#039;);&lt;/SCRIPT&gt;&quot;;<br /><br /><a href="http://weblogs.asp.net/sbehera/archive/2005/10/11/427228.aspx" target="_blank" >http://weblogs.asp.net/sbehera/archive/ ... 27228.aspx</a>]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry100120-010104</id>
		<issued>2010-01-20T00:00:00Z</issued>
		<modified>2010-01-20T00:00:00Z</modified>
	</entry>
	<entry>
		<title>iPhone Screen Orientation: Portrait and Landscape</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091215-005122" />
		<content type="text/html" mode="escaped"><![CDATA[<a href="http://www.evotech.net/blog/2009/09/iphone-screen-orientation-portrait-and-landscape/" target="_blank" >http://www.evotech.net/blog/2009/09/iph ... landscape/</a>]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091215-005122</id>
		<issued>2009-12-15T00:00:00Z</issued>
		<modified>2009-12-15T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Private Messaging System </title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091213-043448" />
		<content type="text/html" mode="escaped"><![CDATA[<a href="http://www.pixel2life.com/publish/tutorials/608/simple_private_messaging_system/" target="_blank" >http://www.pixel2life.com/publish/tutor ... ng_system/</a>]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091213-043448</id>
		<issued>2009-12-13T00:00:00Z</issued>
		<modified>2009-12-13T00:00:00Z</modified>
	</entry>
	<entry>
		<title>Page layout Ideas/JS/Flash</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091126-000007" />
		<content type="text/html" mode="escaped"><![CDATA[This is a living article and contains urls which I find interesting and Might incorporate one day into something.<br /><br /><br />1. <a href="http://www.marriott.com/default.mi" target="_blank" >http://www.marriott.com/default.mi</a><br />]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091126-000007</id>
		<issued>2009-11-26T00:00:00Z</issued>
		<modified>2009-11-26T00:00:00Z</modified>
	</entry>
	<entry>
		<title>php quote in mysql like perl</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091123-015558" />
		<content type="text/html" mode="escaped"><![CDATA[mysql_real_escape_string()<br /><br />&lt;?php<br />// Connect<br />$link = mysql_connect(&#039;mysql_host&#039;, &#039;mysql_user&#039;, &#039;mysql_password&#039;)<br />    OR die(mysql_error());<br /><br />// Query<br />$query = sprintf(&quot;SELECT * FROM users WHERE user=&#039;%s&#039; AND password=&#039;%s&#039;&quot;,<br />            mysql_real_escape_string($user),<br />            mysql_real_escape_string($password));<br />?&gt;]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091123-015558</id>
		<issued>2009-11-23T00:00:00Z</issued>
		<modified>2009-11-23T00:00:00Z</modified>
	</entry>
	<entry>
		<title>After Registration Email</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091119-015629" />
		<content type="text/html" mode="escaped"><![CDATA[$content = &quot;<br />&lt;!DOCTYPE HTML PUBLIC &#039;-//W3C//DTD HTML 4.01 Transitional//EN&#039;<br />&#039;http://www.w3.org/TR/html4/loose.dtd&#039;&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;title&gt;TotalESL&lt;/title&gt;<br />&lt;meta http-equiv=&#039;Content-Type&#039; content=&#039;text/html; charset=utf-8&#039;&gt;<br />&lt;/head&gt;<br /><br />&lt;body&gt;<br /><br />&lt;table width=&#039;600&#039; border=&#039;0&#039; cellspacing=&#039;2&#039; cellpadding=&#039;2&#039;&gt;<br />  &lt;tr&gt;<br />    &lt;td align=&#039;left&#039; class=&#039;textbig&#039;&gt;&lt;strong&gt;Dear &quot;.$username.&quot;:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;<br />      Thank you for joining TotalESL.com, First Stop for Your Second Language Needs.  &lt;br&gt;Please note your account information &lt;br /&gt;<br />      &lt;br /&gt;<br />      &lt;table width=&#039;100%&#039; border=&#039;0&#039; cellspacing=&#039;2&#039; cellpadding=&#039;2&#039;&gt;<br />    &lt;tr valign=&#039;top&#039;&gt;<br />      &lt;td width=&#039;140&#039; align=&#039;left&#039; class=&#039;text&#039;&gt; &lt;strong&gt;Username:&lt;/strong&gt;&lt;/td&gt;<br />      &lt;td align=&#039;left&#039; class=&#039;text&#039;&gt;&quot;.$username.&quot;&lt;/td&gt;<br />    &lt;/tr&gt;<br />    &lt;tr valign=&#039;top&#039;&gt;<br />      &lt;td align=&#039;left&#039; class=&#039;text&#039;&gt;&lt;strong&gt;Password:&lt;/strong&gt;&lt;/td&gt;<br />      &lt;td align=&#039;left&#039; class=&#039;text&#039;&gt;&quot;.$password.&quot;&lt;/td&gt;<br />    &lt;/tr&gt;<br />    &lt;tr valign=&#039;top&#039;&gt;<br />      &lt;td align=&#039;left&#039; class=&#039;text&#039;&gt;&lt;strong&gt;IM/Chat Username:&lt;/strong&gt;&lt;/td&gt;<br />      &lt;td align=&#039;left&#039; class=&#039;text&#039;&gt;&quot;.$username.&quot;&lt;/td&gt;<br />    &lt;/tr&gt;<br />    &lt;/table&gt;<br />      &lt;br&gt;&lt;/td&gt;<br />  &lt;/tr&gt;<br />  &lt;tr&gt;<br />    &lt;td class=&#039;text&#039;  align=&#039;left&#039;&gt;Congratulations! You may to proceed and use our member features:&lt;br&gt;<br />    &lt;/td&gt;<br />  &lt;/tr&gt;<br />  &lt;tr&gt;<br />    &lt;td class=&#039;text&#039;  align=&#039;left&#039;&gt;&amp;nbsp;&lt;/td&gt;<br />  &lt;/tr&gt;<br />  &lt;tr&gt;<br />    &lt;td class=&#039;text&#039;  align=&#039;left&#039;&gt;Thank   you.<br />      &lt;br /&gt;<br />      &lt;br /&gt;<br />      Admin<br />      &lt;br /&gt;<br />    TotalESL.com      &lt;a href=&#039;http://www.totalesl.com&#039;&gt;&lt;br /&gt;<br />    <a href="http://www.totalesl.com&lt;/a&gt;&lt;/td&gt;" target="_blank" >http://www.totalesl.com&lt;/a&gt;&lt;/td&gt;</a><br />  &lt;/tr&gt;<br />&lt;/table&gt;<br />&lt;br&gt;<br /><br />&lt;/body&gt;<br />&lt;/html&gt;&quot;;]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091119-015629</id>
		<issued>2009-11-19T00:00:00Z</issued>
		<modified>2009-11-19T00:00:00Z</modified>
	</entry>
	<entry>
		<title>PHP Sending Mail</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091119-014652" />
		<content type="text/html" mode="escaped"><![CDATA[Code below works without errors <br />&lt;?php <br /><br />$Name = &quot;Da Duder&quot;; //senders name <br />$email = &quot;email@adress.com&quot;; //senders e-mail adress <br />$recipient = &quot;PersonWhoGetsIt@emailadress.com&quot;; //recipient <br />$mail_body = &quot;The text for the mail...&quot;; //mail body <br />$subject = &quot;Subject for reviever&quot;; //subject <br />$header = &quot;From: &quot;. $Name . &quot; &lt;&quot; . $email . &quot;&gt;\r\n&quot;; //optional headerfields <br /><br />mail($recipient, $subject, $mail_body, $header); //mail command :) <br />?&gt;]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091119-014652</id>
		<issued>2009-11-19T00:00:00Z</issued>
		<modified>2009-11-19T00:00:00Z</modified>
	</entry>
	<entry>
		<title>PHP random password generator</title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091119-012742" />
		<content type="text/html" mode="escaped"><![CDATA[&lt;?php<br /> <br />function generatePassword($length=9, $strength=0) {<br />	$vowels = &#039;aeuy&#039;;<br />	$consonants = &#039;bdghjmnpqrstvz&#039;;<br />	if ($strength &amp; 1) {<br />		$consonants .= &#039;BDGHJLMNPQRSTVWXZ&#039;;<br />	}<br />	if ($strength &amp; 2) {<br />		$vowels .= &quot;AEUY&quot;;<br />	}<br />	if ($strength &amp; 4) {<br />		$consonants .= &#039;23456789&#039;;<br />	}<br />	if ($strength &amp; 8) {<br />		$consonants .= &#039;@#$%&#039;;<br />	}<br /> <br />	$password = &#039;&#039;;<br />	$alt = time() % 2;<br />	for ($i = 0; $i &lt; $length; $i++) {<br />		if ($alt == 1) {<br />			$password .= $consonants[(rand() % strlen($consonants))];<br />			$alt = 0;<br />		} else {<br />			$password .= $vowels[(rand() % strlen($vowels))];<br />			$alt = 1;<br />		}<br />	}<br />	return $password;<br />}<br /> <br />?&gt;]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091119-012742</id>
		<issued>2009-11-19T00:00:00Z</issued>
		<modified>2009-11-19T00:00:00Z</modified>
	</entry>
	<entry>
		<title>PERL OOP - Destructors </title>
		<link rel="alternate" type="text/html" href="http://s2kdesigns.org/simblog/index.php?entry=entry091117-100344" />
		<content type="text/html" mode="escaped"><![CDATA[If constructors can have arbitrary names, then why not destructors? Because while a constructor is explicitly called, a destructor is not. Destruction happens automatically via Perl&#039;s garbage collection (GC) system, which is a quick but somewhat lazy reference-based GC system. To know what to call, Perl insists that the destructor be named DESTROY. Perl&#039;s notion of the right time to call a destructor is not well-defined currently, which is why your destructors should not rely on when they are called.<br /><br />Why is DESTROY in all caps? Perl on occasion uses purely uppercase function names as a convention to indicate that the function will be automatically called by Perl in some way. Others that are called implicitly include BEGIN, END, AUTOLOAD, plus all methods used by tied objects, described in the perltie manpage.]]></content>
		<id>http://s2kdesigns.org/simblog/index.php?entry=entry091117-100344</id>
		<issued>2009-11-17T00:00:00Z</issued>
		<modified>2009-11-17T00:00:00Z</modified>
	</entry>
</feed>
