[ENH][ANSI] Collection>>allSatisfy:

R. A. Harmon harmonra at webname.com
Wed Jul 5 15:53:50 UTC 2000


At 12:01 PM 7/5/00 +0200, Marcel Weiher wrote:
>> From: Michael Lucas-Smith <ich at driftwood.darktech.org>
>> I could have _sworn_ this was called #conform: aBlock ...? Maybe thats 
>> just an IBM Smalltalk thing?
[snip]
>Incidentally, I found the ANSI spec an excellent overview of  
>standard protocols, with everything collected in neat summaries.

As did I.

   
>That does rekindle the desire for formal protocols, with protocols  
>managing the message name, a separate protocol hierarchy and browser  
>and even [gasp!] optional means of specifying protocols in messages.

I was so taken by it that I implemented classes for protocol and message
specification, along with other stuff, so I have protocol objects like they
are used in the draft of the standard.  I then created a file that when
loaded gives me the complete set of protocol objects specified in the draft
of the standard.

They are currently used in the Camp Smalltalk tests to check that a message
returns the specified value.  They have been ported by the Camp Smalltalk
folks to most of the major dialects as part of the tests.

I also would love to have a protocol browser where I could define my own
protocols, and messages for them, easily add and change descriptions,
parameter and return value definitions and types, and error section.  All
the support is there in my protocol objects, but I haven't gotten around to
modifying the Class hierarchy browser to add protocol viewing (method
comment from message description) and editing.  I have protocol manager
model functions but again as yet no GUI for it.


>
>The common syntactic means of specifying protocol (types) in  
>Smalltalk extensions seem to be angle brackets,  <Integer> myInt.   
>Wouldn't it be a good idea to modify the standard compiler so that it  
>ignores such constructs?  That way, experiments in that direction  
>could produce code that's still compilable on everybody else's  
>system.

I think the support for this is there in my protocol objects.

--
Richard A. Harmon          "The only good zombie is a dead zombie"
harmonra at webname.com           E. G. McCarthy
Spencer, Iowa





More information about the Squeak-dev mailing list