<div>Hello,</div>
<div>&nbsp;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp; Ok .. I am writing a Haskell function that will call down into the ANSI C library .. blah :: .... -&gt; Ptr Word8 ....-&gt; .... The underlying C function that &quot;blah&quot; is calling has a &quot;void *&quot; so I am using &quot;Ptr Word&nbsp; 8&quot; to model the &quot;void *&quot;. I propose to have the&nbsp;callers of function&nbsp;&quot;blah&quot; to populate a data structure something like &quot;Ptr&nbsp;Buz&quot; where &quot;data Buz = { ........} and then&nbsp;do a&nbsp;&quot;recast :: Ptr Word 8 -&gt; Ptr Buz&quot; when invoking function &quot;blah&quot;. Does this seem reasonable? Is there a better way?</div>

<div>&nbsp;</div>
<div>Thanks, Vasili</div>
<div>&nbsp;</div>
<div>&nbsp;</div>