úÎ ð&      !"#$%Requires OverloadedStringsStable#Bas van Dijk <v.dijk.bas@gmail.com>&(Put two string-likes besides eachother.  Note that  is just a synonym for &.  mid m x y Puts x and y around m.  Note that:  mid m x y =   x y m. =Put two string-likes besides eachother separated by a space. &Put two string-likes above eachother. 0Combine the string-likes with a given function. List version of .  Note that hcat =  (). List version of .  Note that hsep =  (). List version of . punctuate p [d1, ... dn] = [d1  p, d2  p, ... dn-1  p, dn]. #Idea and implementation taken from pretty:  between b c s wraps the string-like s between b and c. Wrap a string-like in (...). Wrap a string-like in [...]. Wrap a string-like in {...}. Wrap a string-like in <...>. Wrap a string-like in '...'. Wrap a string-like in "...". Like '! conditionally wraps a string in (...) 2This function is supposed to be used infix as in:  (precedence >= 10) ` thenParen` ("fun" <+> "arg") &Convert a character to a string-like. A ';' character. A : character. A ',' character. A ' ' character. A '\n' character. A '=' character. A '(' character. A ')' character. A '[' character. A ']' character. A '{' character. A '}' character. A '<' character. A '>' character. 'Convert a Show-able value to a string.  fromShow = fromString . show !!Convert an Int to a string-like. "%Convert an Integer to a string-like. #"Convert a Float to a string-like. $#Convert a Double to a string-like. %%Convert a Rational to a string-like. &  !"#$%&   !"#$%&  !"#$%(      !"#$%&'()*(+,-string-combinators-0.4Data.String.Combinators<>mid<+>$$ intercalatehcathsepvcat punctuatebetweenparenbracketsbraces angleBracketsquotes doubleQuotes thenParencharsemicoloncommaspacenewlineequalslparenrparenlbrackrbracklbracerbracelabrackrabrackfromShowintintegerfloatdoublerationalbase Data.MonoidmappendGHC.Show showParen