As far as refactoring analysis goes, I'm reminded of lunchtime
conversations with Jeremy and Jason at Planet Argon about using some
kind of s-expression generator to find sections of code with similar
signatures. This could maybe help with code-duplication by uncovering
code that runs the same but looks different, but perhaps there is more
to IDE-based refactoring helpers than I imagine (I never messed with
Java more than a cursory look-see.)

To my taste, a heavily-featured IDE sounds like using a WYSIWYG editor
for HTML. Anything that keeps my fingers from making the code seems
dodgy to me.

Chris

On 4/24/06, Lennon Day-Reynolds <[EMAIL PROTECTED]> wrote:
> On 4/24/06, Logan, Patrick D <[EMAIL PROTECTED]> wrote:
> > [...]
> > One thing that a Ruby refactoring tool will have to do is understand
> > where to find all the code. In Smalltalk this is all done through the
> > "image" file which contains the code as well as references to the source
> > control information about which versions are used in the application.
>
> Image-based development makes certain tasks possible which are
> extremely difficult with filesystem-driven tools, at least for
> highly-dynamic languages such as Ruby. Because the on-disk and
> in-memory representations of classes have effectively a one-way
> relationship -- i.e., classes are *in most cases* initially created by
> interpreting the source files, but they can also be built
> programmatically, or modified extensively after loading -- you can't
> reliably associate a certain byterange in a source file with a "live"
> class or method object.
>
> I'm still not sure how you could ever do auto-completion in a Ruby IDE
> without separately annotating your classes, or implementing some
> standard meta-object protocol that returned a list of methods at
> runtime based on context. The widespread use of #method_missing makes
> any simple parsing-based analysis woefully incomplete, especially
> given its importance in key libraries such as ActiveRecord.
>
> In general, though, I agree that the tools available to Smalltalk
> developers are far more mature and featureful; to be fair, though,
> they have had several decades more time to build them.
>
> -Lennon
> _______________________________________________
> PDXRuby mailing list
> [email protected]
> IRC: #pdx.rb on irc.freenode.net
> http://lists.pdxruby.org/mailman/listinfo/pdxruby
>


--
Chris Anderson
http://musicfordozens.com/jchris
_______________________________________________
PDXRuby mailing list
[email protected]
IRC: #pdx.rb on irc.freenode.net
http://lists.pdxruby.org/mailman/listinfo/pdxruby

Reply via email to