packages feed

exon-1.0.0.2: readme.md

This Haskell library provides string interpolation in quasiquotes, allowing you to build strings like this:

```haskell
animal = "snake"
location = "a tree"
[exon|#{animal} in #{location}|]
-- "snake in a tree"
```

Each step of the process is customizable based on the result type of the quote, making it possible to construct strings
for arbitrary types.
For example, `String -> String` is the type used by `showsPrec`, which can be a bit of a hassle to write:

```haskell
data Record =
  Record {
    number :: Int,
    maybeNumber :: Maybe Int,
    value :: Value
  }

instance Show Record where
  showsPrec d Record {..} =
    showParen (d > 10) [exon|Record #{showsPrec 11 number} #{showsPrec 11 maybeNumber} #{showsPrec 11 value}|]
```

[hackage]: https://hackage.haskell.org/package/exon/docs/Exon.html