<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Apr 10, 2008, at 5:59 PM, Patrick Flannery wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">>Additionally, I suspect we'd welcome code to do more in this area into the tree. I <span class="Apple-converted-space"> </span><br><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">>think clang would be a good place to do this.<br>>Also, because clang (and llvm) is built and designed as a set of <span class="Apple-converted-space"> </span><br>>useful libraries for solving all sorts of problem, if there is a rough <span class="Apple-converted-space"> </span><br>>area where the design could be improved to meet your specific needs, I <span class="Apple-converted-space"> </span><br>>think we are interested in have that flexibility in clang.</div></div></div></div></span></blockquote><br><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><br>Refactoring is my goal as well. I was originally attracted to clang because its design yields a much more expressive tree structure with detailed source locations, this makes refactoring easy in many situations. I had a brief list of refactorings that I had worked on, for example renaming functions and variables, moving sections of code to different files and listing #include's which are not required in a given translation unit. If there was some community interest in this, I would very much like to contribute my work. One area which I have not spent enough time thinking about is what an interface for refactoring should look like. If people had some suggestions regarding what they would like to see and how the respective pieces should interact I would appreciate it.<span class="Apple-converted-space"> </span><br></div></div></div></div></span></blockquote><br></div><div>This is very interesting, I'd love to see what you've been working on!</div><div><br class="webkit-block-placeholder"></div><div>-Chris</div></body></html>