python constructor is not returning None when calling recursively
<p>The following code is not returning None but some mysterious "<em>main</em>_.link_list object":</p>

<pre><code>class link_list(object):
    """a link list class"""
    def __init__(self, list):
        super(link_list, self).__init__()
        pdb.set_trace()
        if list==[]:
            return None
        else:
            self.value = list[0]
            self.next = link_list(list[1:len(list)])
</code></pre>

<p>Test code prints 'False':</p>

<pre><code>l=link_list([1,2,3])
print l.next.next.next==None
</code></pre>

<p>Why?</p>
