Hello,<br><br>&nbsp;&nbsp;&nbsp;&nbsp; I don&#39;t want to write kludgy Haskell code!<br><br>typedef struct blah<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int val1;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; union {<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int&nbsp; val2;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; struct {<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int val3;<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int val4;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>}&nbsp;&nbsp;&nbsp; C_type;<br><br>question: in Haskell, can I embed definition of the &quot;union&quot; inside of the C typedef, i.e. recursion definition? Or must I have a separate definition for the &quot;union&quot; which I &quot;instantiate&quot; inside the Haskell &quot;typedef&quot;, i.e. Haskell &quot;data&quot;?<br>
<br>Kind regards, Vasili<br>