[Haskell-cafe] Formatting strict Text
fr33domlover
fr33domlover at riseup.net
Thu Dec 24 00:43:41 UTC 2015
On Thu, 24 Dec 2015 00:13:34 +0200
fr33domlover <fr33domlover at riseup.net> wrote:
> Hello,
>
> I have code which uses Text.Printf.printf with String. Now I'm moving the code
> to use strict Text everywhere (I picked strict since all my strings are very
> short, mostly less than 400 chars). What should I use instead of printf now?
>
> One solution I found is the text-format package, which seems to simply split a
> Text on occurences of "{}" and insert values there. Are there other simple and
> efficient options? All I need is to append Text values and sometimes Ints too,
> so it's enough to have
>
> (1) efficient append and concat
> (2) A function that is :: Int -> Text
>
> Why is strict Text not a Monoid instance? And Builder has no `toStrictText`
> function? There is a function to convert Int to Builder and a Buildable
> instance for Int, but for a simple Int->Text it seems I'm left with an ugly
> `T.pack . show`.
>
>
> Suggestions / advice / comments on this?
>
> Thanks in advance :)
>
> fr33
Since Text does have a Monoid instance after all, another question: The docs
say 'append' is subject to fusion, but it isn't said about 'concat'. When I
need to append several texts together, does it matter whether I just use <>
between then or I 'concat' a list of them? Any one of them recommended / more
efficient?
I don't have any performance issues in my program, I just want to create good
habits now and not get used to bad ones :P
--fr33
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20151224/b177ce9b/attachment.sig>
More information about the Haskell-Cafe
mailing list