<div class="gmail_quote">On Tue, Sep 29, 2009 at 1:15 AM, Pasqualino &quot;Titto&quot; Assini <span dir="ltr">&lt;<a href="mailto:tittoassini@gmail.com">tittoassini@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
This is a good point, I also need to make Data.Text an instance of a<br>
few basic classes and I am not sure that I did it correctly.<br>
<br>
So far I have:<br>
<br>
import Data.Text<br>
<br>
instance Binary Text where<br>
   put = put . encodeUtf8<br>
   get = liftM decodeUtf8 get<br></blockquote><div><br>Well, independent of the implementation (yours seems fine, by the way), we can&#39;t have Platform packages depend on non-Platform packages. The text library isn&#39;t in a position to make it ready for inclusion there yet, but it&#39;s getting close, and it might even get there before binary. So it&#39;s no problem to write an NFData instance, but a Binary instance would be an issue.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

-- DOUBT: Is this correct also for Data.Text.Lazy ?<br>
instance NFData Text<br>
<br>
instance Serial Text where<br>
 -- DOUBT: is this efficient?<br>
 series   d   = [T.pack (series d :: String)]<br>
-- DOUBT: how to define this<br>
 coseries rs  = error &quot;coseries&quot;<br></blockquote><div><br>What&#39;s Serial? <br></div></div>