[Meta] Boolean#asBit discussion. What just happened here?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

[Meta] Boolean#asBit discussion. What just happened here?

Jerome Peace
Hi Sig, Hi Bert

The original post surprised and confused me. Squeak (and Etoys) has had a #asBit message since 2004 (ajh 7/1/2004 timestamp).

The response to the post was amazing. Very knowledgeable squeak guru's seriously discussing if it should be added as if it weren't there.

The point of this post is to point out that this type of discussion is likely to happen about many of the messages and features of our very forked tongue.

It underlines that those we expect to have a full grasp of the language can be as at sea as much as newbies.

Why is that so?
Does anything need to be done about it?
What would help reduce the confusion/ignorance?

My curiosity strongly asks why the minds of these two knowledgeable folk had this blind spot about what is and isn't part of the squeak language.

I know when I needed the message myself I didn't know it existed. I also didn't know it didn't. So I found it by searching for it. I'm pretty sure I tried #asInteger first, found it didn't work; remembered something in the past that did; searched until I found the right word.

I have opinions on this issue but they don't belong in this meta-post. The point of this post is to ask.

How do we know what is squeak and what isn't?

Yours in amusement and curiosity --Jerome Peace





     

Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

Stéphane Rollandin
> How do we know what is squeak and what isn't?

By looking at it.

My own code in Squeak is so large that I don't exactly know what is in.
Several times I found myself deciding to implement something I actually
already implemented years before, used once and immediately forgot. It
has always been a nice feeling to discover the work had already been done.


Stef



Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

David T. Lewis
In reply to this post by Jerome Peace
On Sat, Dec 05, 2009 at 01:41:31PM -0800, Jerome Peace wrote:
>
> The original post surprised and confused me. Squeak (and Etoys)
> has had a #asBit message since 2004 (ajh 7/1/2004 timestamp).
>
> The response to the post was amazing. Very knowledgeable squeak
> guru's seriously discussing if it should be added as if it weren't there.

Well that's pretty funny actually. I think I'll bring the topic up
again next April 1 ;)

FWIW, the #asBit method is miscategorized in "printing", and there
are no senders in the trunk image except for a unit test.

So I brought up a SelectorBrowser and entered "true . 1", with the
result "no single method does that function". Is this a bug?

Dave
 

Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

Nicolas Cellier
2009/12/5 David T. Lewis <[hidden email]>:

> On Sat, Dec 05, 2009 at 01:41:31PM -0800, Jerome Peace wrote:
>>
>> The original post surprised and confused me. Squeak (and Etoys)
>> has had a #asBit message since 2004 (ajh 7/1/2004 timestamp).
>>
>> The response to the post was amazing. Very knowledgeable squeak
>> guru's seriously discussing if it should be added as if it weren't there.
>
> Well that's pretty funny actually. I think I'll bring the topic up
> again next April 1 ;)
>
> FWIW, the #asBit method is miscategorized in "printing", and there
> are no senders in the trunk image except for a unit test.
>
> So I brought up a SelectorBrowser and entered "true . 1", with the
> result "no single method does that function". Is this a bug?
>
> Dave
>
>

MethodFinder only discovers messages that it references...
If it does not reference asBit (see senders) then it cannot discover asBit.

Nicolas

Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

Bert Freudenberg
In reply to this post by Jerome Peace
On 05.12.2009, at 22:41, Jerome Peace wrote:
>
> Hi Sig, Hi Bert
>
> The original post surprised and confused me. Squeak (and Etoys) has had a #asBit message since 2004 (ajh 7/1/2004 timestamp).
>
> The response to the post was amazing. Very knowledgeable squeak guru's seriously discussing if it should be added as if it weren't there.

Hehe, that is funny indeed.

One of the problems is that the Method Finder was not update in years, so newer additions are not found. I'm sure Igor would have discovered the #asBit method otherwise. I simply relied on him.

Secondly, asBit is awkwardly named (even though Anthony and Igor seemed to have the same taste). The name I'd expect for the method is asInteger, and I did search for implementors of this before posting my suggestion, to verify it fits with the other implementations.

- Bert -


Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

K. K. Subramaniam
In reply to this post by Jerome Peace
On Sunday 06 December 2009 03:11:31 am Jerome Peace wrote:
> Why is that so?
Protocol? basic vocabulary?  A method name does set an expectation and people
build up a working vocabulary over time.  My early frustrations with Squeak
:-( were with statements like:

  Morph new name
  SmalltalkImage explain
  PolygonMorph new edit

asBit breaks the protocol of using asInteger to map an object to a number, so
it is not discoverable manually through Message Finder or automatically using
Method Finder.

> Does anything need to be done about it?
> What would help reduce the confusion/ignorance?
Yes. Message name finder could support wildcard searches (e.g. "open", "open*",
"*with*"). It could present results sorted by relevance (say, number of
senders + number of implementors) to encourage vocabulary.

Subbu

Reply | Threaded
Open this post in threaded view
|

Re: [Meta] Boolean#asBit discussion. What just happened here?

Eliot Miranda-2


On Sat, Dec 5, 2009 at 5:33 PM, K. K. Subramaniam <[hidden email]> wrote:
On Sunday 06 December 2009 03:11:31 am Jerome Peace wrote:
> Why is that so?
Protocol? basic vocabulary?  A method name does set an expectation and people
build up a working vocabulary over time.  My early frustrations with Squeak
:-( were with statements like:

 Morph new name
 SmalltalkImage explain
 PolygonMorph new edit

asBit breaks the protocol of using asInteger to map an object to a number, so
it is not discoverable manually through Message Finder or automatically using
Method Finder.


+1
 
> Does anything need to be done about it?
> What would help reduce the confusion/ignorance?
Yes. Message name finder could support wildcard searches (e.g. "open", "open*",
"*with*"). It could present results sorted by relevance (say, number of
senders + number of implementors) to encourage vocabulary.

Subbu