[Haskell-cafe] Re: Navigating Haddock
apfelmus
apfelmus at quantentunnel.de
Mon Aug 6 04:50:22 EDT 2007
Marc Weber wrote:
> On Sun, Aug 05, 2007 at 03:19:25PM -0700, David Pollak wrote:
>> Howdy,
>> As I'm starting to learn the Haskell libraries, I'm having a less than
>> fun time trying to figure out what functions operate on what types.
>> For example, in the documentation for HaXml, there's a description of
>> Document:
>> [1]http://www.cs.york.ac.uk/fp/HaXml/HaXml/Text-XML-HaXml-Types.html#4
>> However, I can't find any links to what functions accept document as a
>> parameter. Am I missing some magic?
>
> There might be better answers. Some ways to achieve what you want:
> a) use hoogle (haskell.org/hoogle). You can use hoogle to find functions by types. But I don't
> know haw to create a query such as ... -> Document -> ...
Hoogle unfortunately doesn't do that very well, although that would be a
great feature. But I think that Text.XML.HaXml isn't indexed by Hoogle
anyway?
>> A couple of other questions...
>> Can ByteStrings be substituted anywhere that takes a String (e.g.,
>> HaXml xmlParse)?
>
> In general yes, you should be able to use ByteStrings wherever a String
> is used..
> But remember that a String has some syntactic suggar becuase it's
> treated as list. Thus the : operator won't work with ByteStrings (I'm
> sure the module does define functions providing the same functionality)
Eh? These two are different types, you have to pack and unpack to
convert between. But note that this most likely voids the performance
gains from ByteString . In other words, if a library function needs a
String , there's not much you can do. However, Henning Thielemann
reported that his use of HaXml (I think) for the parallel web (see
http://haskell.org/haskellwiki/Monad#Fun) works well with Strings.
Regards,
apfelmus
More information about the Haskell-Cafe
mailing list