Hi all.  I missed out on the original RFC process; it was over before 
I even heard of perl6.  Anyway, there's something I want to contribute to the 
Perl community.  I've had an idea about control structures which I've never 
seen anywhere else, so I guess I'm the inventor :).  I hope this is the 
appropriate forum to do it; it looks to me like it is, but I could be wrong.  

        I was planning to put them all in one message, but then I thought it
would be more useful to separate them, so I'll do that instead; they'll make
much more sense if you read them in order.

        Anyway, the first part is the given statement modified to fit this 
idea.  It'd run something like this:

--------------------------------------------------------------
given ($this) {
        when $that_happens { "Have a party" }
        when $that_doesnt_happen { "Sing" }
        all {
                # Do something
        }
        any {
                # Do something else
        }
        some {
                # Do something other
        }
        none {
                # Do something however
        }
}
--------------------------------------------------------------

        The basic idea is that you have two "special" variables which I will, 
just for now, call $truecount and $falsecount.  Basically, every time one of 
the "when" clauses comes up true, it increments truecount; whenever one comes 
up false, it increments $falsecount.  The blocks below the given get evaluated 
under the following conditions

all: $falsecount == 0
any: $truecount > 0
some: $falsecount > 0
none: $truecount == 0

        So anyway, "none" replaces the old "default" option, and the others 
can be useful from time to time too :).  

        Hope this is useful.  

        :)


---------------------------------------------------------------------
| Name: Tim Nelson                 | Because the Creator is,        |
| E-mail: [EMAIL PROTECTED] | I am                           |
---------------------------------------------------------------------

----BEGIN GEEK CODE BLOCK----
Version 3.1
GCS d? s: a-- C++>++++$ US+ P++ L++ E- W+++ N+ w+> M-- V- Y+>++ 
PGP->++ R(+) !tv B++ DI++++ D+ G e>++ h!/* y-
-----END GEEK CODE BLOCK-----


Reply via email to