[ANSI-Smalltalk] Protocol extensions - Object

Andres Valloud andres.valloud at gmail.com
Thu Sep 25 10:24:36 BST 2008


Richard,

>  - become:
>
>   My system doesn't have it and doesn't need it.
>   On a 2+GHz Intel Core Duo Mac, brand X Smalltalk
>   took 3 usec per become:, while brand Y took 300 usec.
>   Squeak 3.10 core has 25 senders of #become:, four of
>   which are tests of #become:.  Of the rest, the only
>   one that would be relevant in my system is in a data
>   structure I already implemented years ago without
>   #become:.  The utility of #become: in implementing
>   the Smalltalk environment _in_ Smalltalk is clear,
>   and I would imagine that the utility of the Smalltalk
>   environment is beyond dispute.  But is its
>   _necessity_ so?  Are fully interactive self-hosting
>   Smalltalks the only desirable Smalltalks?
>
>   Just as the ANSI C standard listed tree-argument main()
>   as a common extension, it would be fair enough for a
>   new Smalltalk standard to list #become: as a common
>   extension.  I'd be sorry to see it in the core, though.

I think there is some value in that when it's there, its behavior is
standardized.  Perhaps we need to make the distinction of whether a
particular piece of standard must be implemented?  Something like
this:

* All compliant Smalltalks must implement xyz and xyz must behave like this.

* All compliant Smalltalks must either implement xyz so that it
behaves like this, or not implement xyz at all.

Andres.



More information about the ANSI-Smalltalk mailing list