[Haskell-cafe] Re: is there a way to pretty print a module?
Derek Elkins
derek.a.elkins at gmail.com
Sun Nov 2 14:58:35 EST 2008
On Sun, 2008-11-02 at 19:34 +0000, Simon Richard Clarkstone wrote:
> Anatoly Yakovenko wrote:
> >>> is there a way to pretty print a module?
> >>> like:
> >>>
> >>> module Main where
> >>> import Language.Haskell.TH
> >>> main = do
> >>> print $ pprint Main
> >>>
> >> haskell-src should be able to do that.
> >
> > I think haskell-src requires you to read the module at run time. I
> > want to embed the contents of the module in my program. Basically a
> > program that can print itself.
>
> This is rather like the idea of a quine; a program the prints itself out
> without referring directly to its own source code. The usual Haskell
> quine is:
>
> putStrLn$(\s->s++show s)"putStrLn$(\\s->s++show s)"
>
> If merely returning the source code is enough then you can do:
>
> (\s->s++show s)"(\\s->s++show s)"
>
> It could be more elegant if \ weren't both lambda and string escape.
So get rid of the lambda, ap(++)show"ap(++)show"
More information about the Haskell-Cafe
mailing list