On Thu, May 26, 2005 at 11:03:15AM -0600, John Williams wrote:
> > I proposed the following:
> >
> > # Fifteens
> > $score += 2 * all( 15 == [EMAIL PROTECTED] any( 0 .. 4 ) } );
> >
> > * Is this syntax legal?
> 
> I think so.
> 
> > * Does it do what I want it to do?
> 
> Definitely not.  

First, apologies in advance for what I'm about to write:  I'm going
to express some thoughts/ideas below and then pretty much leave it 
to others to decide what (if anything) should be done with it.

The continuing exchanges regarding junctions, and the ongoing tendency
by newcomers to think of them and try to use them as sets, makes 
me feel that it might be worthwhile to define and publish a standard
C<Set> class and operations sooner rather than later in Perl 6 
development.  This might reduce the tendency to confuse junctions
with sets, by providing something that is more clearly a "set" and
that has operations more closely aligned with what one is expecting.
>From a "marketing" perspective, it could reduce the initial frustration
I suspect many people feel when they discover that junctions don't do 
the set-type things they initially thought they would, by providing
something that does.

It becomes natural to ask if C<Set> should be part of the Perl 6 "core";
I think that's a distinction and distraction not worrying about at this
point.  Clearly many people are trying to treat junctions as sets,
perhaps because there's no well-understood alternative for it.
Writing an alternative, even on a provisional basis, might be really
helpful to people.

Returning to the apology -- I recognize this is a "@we ought to do X"
post where $Pm ~~ none(@we), but given that there are a lot of people
who seem to like the notion of sets in Perl 6, I'm suggestion that
anyone who wanted to take a crack at drafting a proposal or implementation
would likely get lots of helpful feedback, suggestions, and contributions
from people who are looking to use them.

Pm

Reply via email to