<br><br><div class="gmail_quote">On Wed, May 25, 2011 at 12:46 PM, Matthias Lang <span dir="ltr"><<a href="mailto:matthias@corelatus.se">matthias@corelatus.se</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im">On Wednesday, May 25, Joe Armstrong wrote:<br>
> I need to identify the best possible erlang pretty printer.<br>
><br>
> Are there several, or unpublished variants in existence?<br>
><br>
> I want exact reproduction of inputted constants<br>
> it $a should be pretty printed as $a and NOT 97.<br>
<br>
</div>I don't understand what you want.<br></blockquote><div><br>Sorry  - to me a pretty printer takes the AST of a parsed function, and turns into beautiful text.<br>The text should be the same as the original source with the exception of the adjustment<br>
of white space to make the source prettier.<br><br>The round trip <br><br>    Source -> Parse Tree -> Reconstructed Source -> ParseTree1 <br><br>Should preserve certain invariants<br><br>    ParseTree and ParseTree1 should be isomorphic to within white space  issues<br>
    Syntactic variants for writing integers in Source etc. should be preserved in the reconstructed Source  <br><br>I guess I need not only a pretty printer but also a more precise parser -<br><br>In writing this I'm wondering what to do with erlang that does not parse correctly -<br>
<br>I know there is a pretty printer (erl_prettypr) in syntax tools - but I was wondering<br>if there were others that I didn't know about. I guess wrangler and tidier also have some<br>idea on prettyness.<br><br><br>
/Joe<br><br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
First I thought you were asking about a source-code pretty printer,<br>
but that can't be it, surely no source code pretty printer is going to<br>
mangle $a into 97!<br>
<br>
Then I thought you wanted a replacement for io:fwrite(), but that<br>
doesn't make sense either since $a is exactly the same thing as 97 by<br>
the time it's an argument. But you know that. So you must want<br>
something else again. But what?<br>
<br>
Matt<br>
<br>
<br>
</blockquote></div><br>