Login  Register

Re: Why do we separate class/instance methods in the browser?

Posted by alistairgrant on Jul 23, 2017; 4:24pm
URL: https://forum.world.st/Why-do-we-separate-class-instance-methods-in-the-browser-tp4956231p4956437.html

Hi Tim,

On Sun, Jul 23, 2017 at 04:04:33PM +0100, Tim Mackinnon wrote:

> I think my thread is misunderstood - I???m not saying change how
> methods work, class methods are fine, instance methods are fine -
> I???m just saying I don???t think its ideal anymore to see them so
> separately in our UI. It was really driven home watching great
> programmers struggle (sure Smalltalk is a bit different - and there
> are many elegant things we have, but class methods are pretty normal
> in many languages) - and I have a similar frustration in that I find
> it a straight jacket that we have to click that class button just
> because we want to write what is effectively a constructor that occurs
> to us when we are writing an instance method. Its very jarring and
> breaks your flow to ???switch mode??? to type one in.

From a purely subjective perspective, having programmed in an
environment where instance and class methods were mixed together
(Python), my opinion is that it makes things more difficult to
understand.

I also think from a theoretical perspective that they should be kept
separate:

Sending an instance method means sending a message to a different object
from sending a class method, so they should be kept separate.

While I agree that visually Nautilus could do a much better job of
distinguishing between instance and class methods, it isn't an argument
in favour of mixing them in a single list.


Cheers,
Alistair


> I think Pharo is an environment to experiment with how we think about
> programming (in Smalltalk as well as other languages) - GTInspector is
> marvellous, that is something that really shows how thinking about the
> problem differently can make such a difference. While, I think our
> standard code browsers are ok - they are stuck in a rut that we need
> to break. Calypso is a hint at what is possible, but I want
> GTinspector type thinking more prevalent??? with similar types of
> ideas that inspire us to code better.
>
> Anyway, it seems like I need to take this away and try some
> experiments by myself.
>
> Tim