From: Nicholas Van Weerdenburg Date: 2005-01-26T06:50:16+09:00 Subject: Re: "Duck Typing" or "No need for abstract classes" On Wed, 26 Jan 2005 05:45:48 +0900, Florian Gross wrote: > Nicholas Van Weerdenburg wrote: > > > This is the impression I've gotten- that a live image system uses the > > objects that exist while programming against a live system to do code > > completion, etc. In effect, this is what irb completion does. > > Partially, IRB does not actually evaluate the expressions. If it sees > that you are calling a method it will IIRC just list all methods that > are provided by any of the currently loaded classes. This is a good > thing for expressions with side effects such as `rm -rf /`, but could be > improved in other cases. > > > Interestingly, Rails seems to be evolving into a pseudo-image-like > > system, with class reloads and breakpoints that spawn irb sessions. > > Conceivably an editor could be smart enough to bind to the running > > environment. > > As the author of the breakpoint library I'm still very interested in > using it for writing an IDE that will attach to a live code base and > allow you to investigate, modify and much more. Note that this would at > first not be just as nifty as the Smalltalk solutions because you can > not generally get code for methods and so on, but using some of the cool > thing like the AST library or by reading back the code from Files you > could probably get pretty close. > > It's an interesting area and I'd be willing to offer as much support as > I can to such efforts if somebody can kick this off with a decent code base. > > Cool! (I'm saying that too much the last few days) What code base to mean? IDE or "live codebase"'? This is way beyond me so I'd be interested in knowing what you think the main components needed are, and how the functionality would be distributed across breakpoint, IDE, and a "live codebase" manager. Thanks, Nick -- Nicholas Van Weerdenburg