[squeak-dev] Selectors with underscores: Have your cake and eat
it, too...
Casey Ransberger
ron.spengler at gmail.com
Sat Mar 13 04:22:36 UTC 2010
Hmm...
- Makes filing stuff into the image slightly more dangerous and confusing. (-1)
- Satisfies all reasonable parties regardless of viewpoint on the matter. (+1)
Zero sum game I guess? Ship it.
On Fri, Mar 12, 2010 at 8:14 PM, Andreas Raab <andreas.raab at gmx.de> wrote:
> Folks -
>
> Attached my take on selectors with underscores. It basically separates the
> issue of using underscores in assignment from the issue of using underscores
> in selectors, puts this into two individual preferences, and allows
> per-class scoping while providing a system-wide default.
>
> The possible combinations of preferences are:
>
> * allowUnderscoreAssignments off, allowUnderscoreSelectors: off
> The use of underscores is forbidden, i.e., the Croquet model.
>
> * allowUnderscoreAssignments on, allowUnderscoreSelectors: off
> The classic Squeak usage; all of the following are assignments:
>
> a _ b => a := b
> b_ c => b := c
> d _e => d := e
> f_g => f := g.
>
> * allowUnderscoreAssignments off, allowUnderscoreSelectors: on
> The standard usage in other dialects
>
> a _ b => ((a) _) b
> b_ c => (b_) c
> d _e => (d) _e
> f_g => (f_g)
>
> * allowUnderscoreAssignments on, allowUnderscoreSelectors: on
> The hybrid usage requiring spaces around underscore for assignment:
>
> a _ b => a := b
> b_ c => (b_) c
> d _e => (d) _e
> f_g => (f_g)
>
> This gives us a range of options to decide how to deal with it. I would
> personally say that for the core image we should go with the first option
> (disable underscores altogether) and only enable whichever option we like
> for the release.
>
> What do people think about this approach? I think it provides the most
> options and gives us ample flexibility to decide what we'd like to use down
> the road.
>
> If there is no fundamental opposition I'll push it into the trunk in a
> couple of days.
>
> Cheers,
> - Andreas
>
>
>
>
--
Casey Ransberger
More information about the Squeak-dev
mailing list
|