Archaeopteryx Software, Inc.
Take Flight!Search

Wing IDE
About Us
Open Source

 Advanced Search

[wingide-users] Feature Request: Refactoring

Wing IDE Support
Fri, 10 May 2002 15:46:24 -0400 (EDT)

On Fri, 10 May 2002, SNYDER, BARRON F (AIT) wrote:
> IntelliJ's IDEA is a great IDE for Java that implements refactoring very
> well (just in case anybody wanted to see another example of refactoring in
> an IDE).

We are looking at refactoring support, but it's still in the
experimentation stage.  We have specific added capabilities planned
for the source analyser, on which refactoring will be based.  It
already knows more about your code than it lets on, but there's more
to be done to have enough info for some of the refactoring cases.

Yes, Python isn't strongly typed but the bottom line is that people don't
use the super-dynamic capabilities like exec() all that often, so there's
a lot we can figure out from looking at usage at points of call and in
assignments, and we can pretty much recover what's needed to do things
like refactoring with a fair degree of accuracy (we think, so far

Having said that, we see CVS integration as pretty important to things
like refactoring, because whenever you make changes like that it's a good
idea to look at diffs before you commit to them!  I doubt it will ever
be completely flawless in Python, but it certainly can be a big
time-saving tool; a lot better than moving around things manually.

BTW, one somewhat related thing we're doing is adding better global
replace.  Since we ended up basing the OS X beta on the 1.2 revision
branch, the new search manager is already in that, in somewhat unfinished
but working form.  This isn't informed by source analysis but it's still a
useful tool for some kinds of refactoring (like renaming poorly named
variables or classes).

- Stephan

Wing IDE for Python                          Archaeopteryx Software, Inc                              Take Flight!

Run by Mailman v 2.0.8

Copyright (c) 2000-2002, Archaeopteryx Software, Inc.
Legal Statements