$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Andrew Sutton (asutton_at_[hidden])
Date: 2007-09-03 18:41:53
> The standard definitions of Refactoring typically does include
> verifying and ensuring that renames a) properly obey scope and other
> language rules and b) don't conflict with other names in any other
> scope.  Refactoring does require processing multiple translation
> units in most cases, I'm not sure why you'd assume it doesn't.
 From the definition... from a practical standpoint its easier to  
allow the changes and let the compiler catch the errors :) I'm   
fairly certain that there aren't any implementations that actually  
make guarantees implied in the definition (I'm 95% sure of research  
prototypes and 50% for industry implementations). Partially automated  
refactorings are better than no refactorings. I equate it to the  
study of deadlock detection and prevention in operating systems. It's  
great in theory, but its just not practical.
> Note specifically that 'sed' does not qualify as a refactoring tool -
> you have to do a lot more semantic analysis of the program to do
> refactoring safely.
True, neither does grep qualify as a source code analysis tool, but  
damn it's useful for searching thru text.
Hopefully, I'll have some time this semester to look a lot more  
closely at  llvm/clang. I have a feeling that it would still provide  
a great platform for ad-hoc analysis and transformation.
Andrew Sutton
asutton_at_[hidden]