úÎ</html>|]ÿ3Right (Document {documentPrologue = Prologue {prologueBefore = [], prologueDoctype = Nothing, prologueAfter = []}, documentRoot = Element {elementName = Name {nameLocalName = "html", nameNamespace = Nothing, namePrefix = Nothing}, elementAttributes = fromList [], elementNodes = []}, documentEpilogue = []})(Internally, this function is using the  2https://hackage.haskell.org/package/heterocephalusheterocephalusE package. This means you can use variable interpolation, as well as forall, if, and case$ control statements. Checkout the  .https://github.com/arowM/heterocephalus#syntaxheterocephalus README for more info.let a = "hello world"[xml|<html>#{a}</html>|] Right ...5Here's an example of invalue XML that will produce a  value:[xml|<html </html>|]Left ...>Here's an example of a template that can be parsed as an HTML , but not as an XML :[xml|<html><br></html>|]Left ...This function is just like  $, but produces expressions of type .3If your input string cannot be parsed into a valid +, an error will be thrown at runtime with .ZThis function is nice to use in GHCi or tests, but should not be used in production code.This function is similar to  d, but doesn't allow variable interpolation or control statements. It produces expressions of type .UAn error will be thrown at compile-time if the input string cannot be parsed into a .    Dennis Gosnell 2017BSD3(Dennis Gosnell (cdep.illabout@gmail.com) experimentalunknownNoneThis  produces HTML s.This  produces expressions of type .$Here's a simple example of using it:[html|<html></html>|]ÿ+Document {documentPrologue = Prologue {prologueBefore = [], prologueDoctype = Nothing, prologueAfter = []}, documentRoot = Element {elementName = Name {nameLocalName = "html", nameNamespace = Nothing, namePrefix = Nothing}, elementAttributes = fromList [], elementNodes = []}, documentEpilogue = []}(Internally, this function is using the  2https://hackage.haskell.org/package/heterocephalusheterocephalusE package. This means you can use variable interpolation, as well as forall, if, and case$ control statements. Checkout the  .https://github.com/arowM/heterocephalus#syntaxheterocephalus README for more info.let a = "hello world"[html|<html>#{a}</html>|] Document ...#Even invalid HTML will still parse.[html|<html </html>|] Document ...>Here's an example of a template that can be parsed as an HTML , but not as an XML :[html|<html><br></html>|] Document ...This function is the same as j, but doesn't allow variable interpolation or control statements. It also produces expressions of type .      !"#"$%*xml-html-qq-0.1.0.0-6IB1E2BlWMyDpCxyS7Qt7w Text.XML.QQText.XMLHTML.Internal Text.HTML.QQbase GHC.Exception SomeException*xml-conduit-1.4.0.3-GoZegmEUkYMAOOkiMliVZOText.XMLDocumentcreateExpQuasiQuoterhandleParseDocErr$fLiftDocument$fLiftPrologue$fLiftMiscellaneous $fLiftElement $fLiftDoctype$fLiftInstruction $fLiftName $fLiftNode$fLiftExternalIDxml xmlUnsafexmlRawhtmlhtmlRawtemplate-haskellLanguage.Haskell.TH.Quote QuasiQuoterLanguage.Haskell.TH.SyntaxExpGHC.ErrerrorquoteExp Data.EitherEitherLeft