Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
A6: Pipes
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  4 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Michael Lazzaro  
View profile  
 More options Mar 10 2003, 7:48 pm
Newsgroups: perl.perl6.language
From: mlazz...@cognitivity.com (Michael Lazzaro)
Date: Mon, 10 Mar 2003 16:52:29 -0800
Local: Mon, Mar 10 2003 7:52 pm
Subject: A6: Pipes
Since noone else has said it yet -- This Apoc looks *great*.  The sig
stuff is very, very nice.  (The wrapper stuff has interesting
possibilities, too, especially with OO.)

Question on pipes: I like very much the concept of relating them only
to the variadic list, that was the piece we were all missing in the P6L
discussions.  After reading that appendix, I'm still a bit murky on the
final decisions as to which of these edge cases will be allowed:

          my @out <== (1,2,3);
          my @out <== (my @in = foo());
          my @out <== foo();

          (1,2,3) ==> my @out;
(my @in = foo()) ==> my @out;
            foo() ==> my @out;

Are these all valid, or do some of them have to be errors?  I got lost
in the appendix explanation of what was confirmed, and what was
wishful-only...

FWIW, stylistically, I'd personally vote for

    @in ==> map  {...}
        ==> sort {...}
        ==> map  {...}
        ==> @out;

as better than:

    @in ==>
        map  {...} ==>
        sort {...} ==>
        map  {...} ==>
        @out;

... if we care about such details.  :-)

MikeL


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Damian Conway  
View profile  
 More options Mar 10 2003, 8:48 pm
Newsgroups: perl.perl6.language
From: dam...@conway.org (Damian Conway)
Date: Tue, 11 Mar 2003 12:00:31 +1100
Local: Mon, Mar 10 2003 8:00 pm
Subject: Re: A6: Pipes

Michael Lazzaro wrote:
> After reading that appendix, I'm still a bit murky on the
> final decisions as to which of these edge cases will be allowed:

>          my @out <== (1,2,3);
>          my @out <== (my @in = foo());
>          my @out <== foo();

>          (1,2,3) ==> my @out;
> (my @in = foo()) ==> my @out;
>            foo() ==> my @out;

These are basically all just two edge-cases. Namely:

        @var <== LIST
and:
        LIST ==> @var

Larry is still leery, but I suspect they will ultimately be allowed.
Mainly because these:

       @in ==> map  {...}
           ==> sort {...}
           ==> map  {...}
           ==> @out;

      @out <== map  {...}
           <== sort {...}
           <== map  {...}
           <== @in;

are much less annoying than:

       @in ==> map  {...}
           ==> sort {...}
           ==> map  {...}
           ==> push @out;

      push @out <== map  {...}
                <== sort {...}
                <== map  {...}
                <== @in;

And because, as I demonstrated, the necessary overloaded multimethods are so
trivial to implement.

Damian


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
John Williams  
View profile  
 More options Mar 11 2003, 8:48 pm
Newsgroups: perl.perl6.language
From: willi...@tni.com (John Williams)
Date: Tue, 11 Mar 2003 17:54:07 -0700 (MST)
Local: Tues, Mar 11 2003 7:54 pm
Subject: Re: A6: Pipes

On Tue, 11 Mar 2003, Damian Conway wrote:

> These are basically all just two edge-cases. Namely:

>    @var <== LIST
> and:
>    LIST ==> @var

Have you considered:

    LIST ==> @var.operator:=
    LIST ==> @var.STOREARRAY
    LIST ==> @var.how_do_i_spell_the_assignment_method

?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Damian Conway  
View profile  
 More options Mar 11 2003, 10:48 pm
Newsgroups: perl.perl6.language
From: dam...@conway.org (Damian Conway)
Date: Wed, 12 Mar 2003 13:51:03 +1100
Local: Tues, Mar 11 2003 9:51 pm
Subject: Re: A6: Pipes

John Williams wrote:
> Have you considered:

>     LIST ==> @var.operator:=
>     LIST ==> @var.STOREARRAY
>     LIST ==> @var.how_do_i_spell_the_assignment_method

That's probably:

        LIST ==> @var.STORE(*);

which is still pretty darn ugly. ;-)

Damian


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »