From: Lothar Scholz Date: 2005-01-26T00:18:22+09:00 Subject: Re: "Duck Typing" or "No need for abstract classes" Hello Pit, PC> Lothar Scholz schrieb: >> CS> On Tue, 25 Jan 2005, Mathieu Bouchard wrote: >> CS> Of course, creating something like this is much harder in a language >> CS> like Ruby where objects are ever-changing and ever-malliable PC> ... >> 100% ACK. >> As a toolwriter i often get requests: I want a good working >> refactoring browsers, where are the code tooltips, >> can't you integrate a ruby lint etc. >> >> These tools all need a type inference engine and this is a huge task. PC> ... PC> I'm sure you know where the original refactoring browser came from. Your last PC> statement is simply wrong. If i remember correctly the first version was not more intelligent then a grep with some good regexprs (for the most important "rename method" and "rename class" refactoring moves) all later versions have a build in type inference engine based on heuristics. This can be done much much easier in smalltalk so the type inference does not need so much explicit written help. Remember that even things like counting argumetns in a method invocation and comparing that with the arguments in a def statement to find out if this is a possible invocation of the declaration is a very simple type inference engine. -- Best regards, emailto: scholz at scriptolutions dot com Lothar Scholz http://www.ruby-ide.com CTO Scriptolutions Ruby, PHP, Python IDE 's