title: Recursion With Tuples in Haskell
body: <p>I want to define a simple function in Haskell:</p>
  
  <pre><code>    nzp :: [Int] -&gt; (Int,Int,Int)
  </code></pre>
  
  <p>that accepts a list of integers as input  and returns a triple (a,b,c) where a is the amount of numbers in the list less than 0, b is the amount equal to 0 and c is the amount higher than zero. For example, </p>
  
  <pre><code>    nzp [3,0,-2,0,4,5] = (1,2,3)
  </code></pre>
  
  <p>I have to define this function recursively and I can only traverse the list once. How can I do this? I can't seem to grasp the concept of recursively creating a tuple.</p>
  
  <p>Most Regards</p>