<div class="im"><br>Ok, thanks to everyone, that&#39;s certainly answered my question and given me some more avenues to pursue. I can see now that because I can pattern match against the empty list it&#39;s not really a problem to have it there. I didn&#39;t realise I could use Maybe in the constructor because it&#39;s a monad, but that&#39;s good because I was wondering about the best way to make a nullable value. That Data.Tree module looks interesting too! It does seem to be a naturally recursive type, but I&#39;m still trying to become easy with that sort of thought :)<font color="#888888"><br>

</font></div><div class="im"></div><div class="im">Thanks for all the help, it&#39;s nice to get a bit of feedback when still getting used to things.</div><div class="im"></div><div class="im">Iain</div><br>