Editing class method sources in single place

Blake blake at kingdomrpg.com
Thu Jan 31 21:51:08 UTC 2008


On Thu, 31 Jan 2008 09:43:24 -0800, Jason Johnson  
<jason.johnson.081 at gmail.com> wrote:

> I was just pointing out the kind of requests that happen from people
> coming from other languages and not "integrating".  I remember
> recently seeing someone request that Smalltalk drop the "image idea"
> and switch to source files so it would be more "friendly to newbies".

Well, yes, that's called "Ruby". ;-)

>> I recall a study (by IBM, I think) where the amount of code one could  
>> see at once was postiively related to productivity.
>
> I don't understand this.  Are you saying that having more source code
> on the screen increased productivity?

Yes. The tracks faster than the fingers, basically. I've been known to use  
miniscule fonts at 1600x1200 for precisely that reason. (There are limits,  
unfortunately.)

> That may be but if so a simple
> "show me all the methods in the class" isn't going to work.

That was never my suggestion. In fact, the set of code items in question  
is going to be split among classes, and isn't necessarily going to embrace  
entire classes. I suspect variants in here--some folks are going to favor  
a LIFO type stack, while others might prefer an alphabetic arrangement.

> So that view is good for figuring out where functionality is in a new
> class.  But when I want to work on the functionality of one specific
> button the view is all wrong.  I want to see the above mentioned items
> that are related to this specific button and nothing else.  What I do
> right now is click the minus on the unrelated methods to shorten them
> down to one line, but it's still clutter I have to wade through.

That's where Smalltalk, being a non-source-file-based system can shine.  
Since order is not significant (and it IS in C# and other projects), you  
can arbitrarily designate what is shown and in what order, without the  
clunkiness of hiding chunks of code (which is how the modern IDEs handle  
clutter).

>> (And yet, I'm the only
>> coder I know with a propensity for conserving vertical space.) I do know
>> that if I'm in method A and it calls method B, and method B is right
>> there?
>
> I wonder about doing a tooltip style pop up on mouse over of the B
> method call. :)

Would require going to the mouse and waiting for the tooltip to pop-up.  
We're talking fractions of a second here. Another study I recall reading  
was the effect of lag on programmer producivity. A half-second was all it  
took to break concentration. At 2 seconds, the programmer has left the  
building.<s>

>> I'm golden. As a corrolary to "the problem is in your code",
>> there's also, "the problem is mostly in the code you just changed". I
>> could see a browser where the methods highlighted their latest changes,
>> like a mini-diff--something also good for pedagogical purposes.
>
> Interesting ideas.

Now...off to implementation.... Heh.

	===Blake===




More information about the Squeak-dev mailing list