title: Function double in haskell
body: <p>I have this definition:</p>
  
  <pre><code>data AEB2 a = Nil | Un a | Conc (AEB2 a) (AEB2 a) deriving (Eq, Show)
  </code></pre>
  
  <p>and I have:</p>
  
  <pre><code>foldAEB2 :: b -&gt; (a-&gt;b) -&gt; (b-&gt;b-&gt;b) -&gt; (AEB2 a) -&gt; b
  foldAEB2 fnil fsin fcon t = case t of
                                         Nil -&gt; fnil
                                         Un s -&gt; fsin s
                                         Conc u v -&gt; fcon (rec u) (rec v)                                   
                                         where rec = foldAEB2 fnil fsin fcon
  </code></pre>
  
  <p>I need do one function "double" using foldAEB2. One example is </p>
  
  <p>I need help doing this function. Thanks</p>