Re: syntax for accessing multiple versions of a module

2005-10-18 Thread Juerd
Nicholas Clark skribis 2005-10-18 22:41 (+0100): > my $foo = DBI(1.38)->new(); > my $bar = DBI(1.40)->new(); I like this syntax, and have a somewhat relevant question: can a module be aliased entirely, including all its subclasses/-roles/-.*? Something like use DBI as RealDBI; use

Re: syntax for accessing multiple versions of a module

2005-10-18 Thread Rob Kinyon
On 10/18/05, Juerd <[EMAIL PROTECTED]> wrote: > Nicholas Clark skribis 2005-10-18 22:41 (+0100): > > my $foo = DBI(1.38)->new(); > > my $bar = DBI(1.40)->new(); > > I like this syntax, and have a somewhat relevant question: can a module > be aliased entirely, including all its subclasses/-roles

Re: syntax for accessing multiple versions of a module

2005-10-18 Thread Stevan Little
Nicholas, This is addressed in S11, here is a link: http://search.cpan.org/~ingy/Perl6-Bible/lib/Perl6/Bible/S11.pod To summarize, the syntax to load the modules is: use Dog-1.2.1; While the syntax to create a specific version of a module is: my Dog-1.3.4-cpan:JRANDOM $spot .= new("woo

Re: syntax for accessing multiple versions of a module

2005-10-18 Thread Rob Kinyon
> Another school of thought would be that "Dog" alone would be > considered ambiguious and so we would just alias far enough to be > clear, like this: > >Dog => Ambiguity Error! >Dog-1.2.1 => Dog-1.2.1-cpan:JRANDOM >Dog-0.0.2 => Dog-0.0.2-cpan:LWALL > > Of course, this means that

Re: syntax for accessing multiple versions of a module

2005-10-18 Thread Stevan Little
On Oct 18, 2005, at 11:15 PM, Rob Kinyon wrote: NB: Dog-*-cpan:LWALL and Dog-*-cpan:JRANDOM, as well as *-*-cpan:LWALL are also needed for entry into the mix because if there's only one module loaded that is signed by cpan:LWALL, that should be sufficient disambiguation for the parser. (How main

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Larry Wall
On Tue, Oct 18, 2005 at 07:38:19PM -0400, Stevan Little wrote: : Then this is added as "Dog-0.0.2-cpan:LWALL" into the main symbol : table. Then once the compilation process is complete, I traverse the : symbol table hierarchy collecting all the names. Any duplicate short : names (Dog) are no

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Ruud H.G. van Tol
Larry Wall: > I think using two different versions from the same > module is going to be relatively rare. For dealing with two generations at the same time, like with conversions: in stead of designing and applying a patch (SQL's ALTER COLUMN, etc.), create a new dataset and let the old informati

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Stevan Little
Larry, On Oct 19, 2005, at 4:10 AM, Larry Wall wrote: On Tue, Oct 18, 2005 at 07:38:19PM -0400, Stevan Little wrote: : Then this is added as "Dog-0.0.2-cpan:LWALL" into the main symbol : table. Then once the compilation process is complete, I traverse the : symbol table hierarchy collecting all

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Larry Wall
On Wed, Oct 19, 2005 at 12:59:34PM +0200, Ruud H.G. van Tol wrote: : Larry Wall: : : > I think using two different versions from the same : > module is going to be relatively rare. : : For dealing with two generations at the same time, like with : conversions: in stead of designing and applying a

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Jonathan Scott Duff
On Wed, Oct 19, 2005 at 09:33:39AM -0400, Stevan Little wrote: > However, this brings up an issue I was thinking about. Take this code > for instance: > > use Cat-0.0.1; > use PetStore; > > my Cat $kitty .= new(); > > --- in PetStore.pm --- > > use Dog; > use Cat-0.0.5; > > Which C

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Larry Wall
On Wed, Oct 19, 2005 at 09:33:39AM -0400, Stevan Little wrote: : On Oct 19, 2005, at 4:10 AM, Larry Wall wrote: : >On Tue, Oct 18, 2005 at 07:38:19PM -0400, Stevan Little wrote: : >: Then this is added as "Dog-0.0.2-cpan:LWALL" into the main symbol : >: table. Then once the compilation process is c

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Nate Wiger
Stevan Little wrote: Nicholas, This is addressed in S11, here is a link: http://search.cpan.org/~ingy/Perl6-Bible/lib/Perl6/Bible/S11.pod To summarize, the syntax to load the modules is: use Dog-1.2.1; While the syntax to create a specific version of a module is: my Dog-1.3.4-cpan:JRA

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Larry Wall
On Wed, Oct 19, 2005 at 01:30:07PM -0700, Nate Wiger wrote: : Stevan Little wrote: : >Nicholas, : > : >This is addressed in S11, here is a link: : > : > http://search.cpan.org/~ingy/Perl6-Bible/lib/Perl6/Bible/S11.pod : > : >To summarize, the syntax to load the modules is: : > : > use Dog-1.2.1;

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Nate Wiger
Larry Wall wrote: Well, we thought about opening it up like that, but we really kinda need to establish what is an official part of the "long name" for uniqueness purposes, and try to avoid too much visual clutter in standard usage. Going with that... I would think that the "official" part is r

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Larry Wall
On Wed, Oct 19, 2005 at 03:10:13PM -0700, Nate Wiger wrote: : Larry Wall wrote: : >Well, we thought about opening it up like that, but we really kinda : >need to establish what is an official part of the "long name" for : >uniqueness purposes, and try to avoid too much visual clutter in : >standard

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Nate Wiger
Larry Wall wrote: This is one of those accomodations to the real world, like everyone agreeing on a standard URI format. We're really trying to keep these module names close to what you'd see as the name of, say, the corresponding .rpm file. These modules have to have names that work outside of

Re: syntax for accessing multiple versions of a module

2005-10-19 Thread Rob Kinyon
On 10/19/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > My concern is that we're solving problems that don't really exist in > real-world Perl usage. Are there really two competing authors of DBI? > Or, for any product, do two people really try to market "SuperWidget"? > No, one person just changes to

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Larry Wall
On Wed, Oct 19, 2005 at 09:12:47PM -0400, Rob Kinyon wrote: : On 10/19/05, Nate Wiger <[EMAIL PROTECTED]> wrote: : > My concern is that we're solving problems that don't really exist in : > real-world Perl usage. Are there really two competing authors of DBI? : > Or, for any product, do two people

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Larry Wall
On Wed, Oct 19, 2005 at 03:58:17PM -0700, Nate Wiger wrote: : Larry Wall wrote: : >This is one of those accomodations to the real world, like everyone : >agreeing on a standard URI format. We're really trying to keep : >these module names close to what you'd see as the name of, say, : >the corresp

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Nate Wiger
Larry Wall wrote: I think there can be some kind of community metainformation that sets defaults appropriately. And if not, the site/project can certainly establish defaults. On the other hand, a lot of projects do simply want to specify the version and author explicitly eveyr time, and they'd

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Rob Kinyon
On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > Larry Wall wrote: > > I think there can be some kind of community metainformation that sets > > defaults appropriately. And if not, the site/project can certainly > > establish defaults. On the other hand, a lot of projects do simply > > want t

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Rob Kinyon
On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > And, it shares alot with other languages people know and use. That's more because languages are incestuous (like Perl) instead of languages independently arriving at the same conclusions. Yes, the "while" loop is going to look the same everywher

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Nate Wiger
Rob Kinyon wrote: On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: And, it shares alot with other languages people know and use. That's more because languages are incestuous (like Perl) instead of languages independently arriving at the same conclusions. Yes, the "while" loop is going to lo

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Nicholas Clark
On Thu, Oct 20, 2005 at 11:31:03AM -0700, Nate Wiger wrote: > $1 is a prime example. $0 means the program name (all scopes). $1 is the > first match. It's been that way for a very, very, very long time, and > it works just great. There is no *compelling* reason to change this, > other than to sat

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Rob Kinyon
> Unfortunately many people WILL have to deal with such changes, and > the question should be: Does a given change offer a clear improvement? > As you said, if we're helping %1 of people %1 of the time, are the > other 99% really going to change all their scripts? No chance. You again misread what

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Nate Wiger
Nicholas Clark wrote: $1 is a prime example. $0 means the program name (all scopes). $1 is the first match. It's been that way for a very, very, very long time, and it works just great. There is no *compelling* reason to change this, other than to satisfy a few people that think it "should be

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Luke Palmer
On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > $1 is a prime example. $0 means the program name (all scopes). $1 is the > first match. It's been that way for a very, very, very long time, and > it works just great. There is no *compelling* reason to change this, > other than to satisfy a few

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Nate Wiger
Luke Palmer wrote: On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: $1 is a prime example. $0 means the program name (all scopes). $1 is the first match. It's been that way for a very, very, very long time, and it works just great. There is no *compelling* reason to change this, other than t

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Luke Palmer
On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > I think you missed my point(s), but if you feel compelled to write me > off as a "complainer" just because I have a counter-opinion that is at > least somewhat built from a good amount of experience, then I do think > you're wearing a set of blin

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread John Adams
-Original Message- From: Luke Palmer <[EMAIL PROTECTED]> > Our target audience is only somewhat from a Perl 5 background. People from Java, from Python, from C, and even just starting to program will be learning Perl 6, and they would rather have all the language be zero-based, rather tha

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread Luke Palmer
On 10/20/05, John Adams <[EMAIL PROTECTED]> wrote: > Then the target audience is specifically not people coming from a > shell scripting background, who are quite used to the idea that $0 is > different from $1 in a way in which $1 is not different from $2. > Correct? But $1 in Perl 5 wasn't the s

Re: syntax for accessing multiple versions of a module

2005-10-20 Thread John Adams
From: Luke Palmer <[EMAIL PROTECTED]> > But $1 in Perl 5 wasn't the same as $1 in a shell script. Sure--but that's not what I said. I'm all for breaking things that need breaking, which is why I keep my mouth shut most of the time--either I see the reason or I suspect (that is, take on faith,

Re: syntax for accessing multiple versions of a module

2005-10-21 Thread John Adams
-Original Message- From: "Patrick R. Michaud" <[EMAIL PROTECTED]> >I can state the compelling reason for this one -- it's way too confusing when $1, $2, $3, etc. correspond to $/[0], $/[1], $/[2], etc. >In many discussions of capturing semantics earlier in the year, nearly everyone usin

Re: syntax for accessing multiple versions of a module

2005-10-21 Thread Patrick R. Michaud
On Thu, Oct 20, 2005 at 09:14:15PM -0400, John Adams wrote: > From: Luke Palmer <[EMAIL PROTECTED]> > > > But $1 in Perl 5 wasn't the same as $1 in a shell script. > > I'm all for breaking things that need breaking, which is why I > keep my mouth shut most of the time--either I see the reason or

Re: syntax for accessing multiple versions of a module

2005-11-22 Thread Nicholas Clark
On Tue, Oct 18, 2005 at 07:38:19PM -0400, Stevan Little wrote: > I have been meaning to do some kind of p5 prototype of this, I can > push it up the TODO list if it would help you. As you can probably infer from the amount of time that it has taken for me to realise that I've failed to reply to

$1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-20 Thread Nate Wiger
Luke Palmer wrote: Okay, I may still be missing your point, so let me try to summarize just to be sure we're on the same page: You say that the thing that is going to hinder migration to Perl 6 is the fact that it's different from Perl 5. Intentionally trite oversimplification. My problem is

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-20 Thread Luke Palmer
On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > Luke Palmer wrote: > > > > Okay, I may still be missing your point, so let me try to summarize > > just to be sure we're on the same page: You say that the thing that > > is going to hinder migration to Perl 6 is the fact that it's different > >

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-20 Thread Jonathan Scott Duff
On Thu, Oct 20, 2005 at 05:12:32PM -0700, Nate Wiger wrote: > Every regex engine in every language uses $1 or \1. This includes Java, > JavaScript, C, PHP, Python, awk, sed, the GNU regex libs, etc. Somehow > other languages seem ok with this, because it's a widely-used convention. This quibbling

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Benjamin Smith
On Thu, Oct 20, 2005 at 06:39:34PM -0600, Luke Palmer wrote: > On 10/20/05, Nate Wiger <[EMAIL PROTECTED]> wrote: > > Luke Palmer wrote: > > > The fact that we use . instead of -> (like every other language on > > > the planet)? > > > > You're using my argument for me - thanks. See above. > > Huh?

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Luke Palmer
On 10/21/05, Benjamin Smith <[EMAIL PROTECTED]> wrote: > On Thu, Oct 20, 2005 at 06:39:34PM -0600, Luke Palmer wrote: > > Huh? So you want to go back to Perl 5's arrow? *Anybody* coming to > > Perl 6 from some non-Perl 5 language is going to be more comfortable > > with dot. > > Unless it was Sm

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Luke Palmer
On 10/21/05, Luke Palmer <[EMAIL PROTECTED]> wrote: > On 10/21/05, Benjamin Smith <[EMAIL PROTECTED]> wrote: > > On Thu, Oct 20, 2005 at 06:39:34PM -0600, Luke Palmer wrote: > > > Huh? So you want to go back to Perl 5's arrow? *Anybody* coming to > > > Perl 6 from some non-Perl 5 language is goi

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Michele Dondi
On Thu, 20 Oct 2005, Luke Palmer wrote: Huh? So you want to go back to Perl 5's arrow? *Anybody* coming to Perl 6 from some non-Perl 5 language is going to be more comfortable with dot. (Also, I did like the arrow notation, but) how cool would be @cool=grep ->cool, @misc; # if compared to

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Nate Wiger
Luke Palmer wrote: Every regex engine in every language uses $1 or \1. This includes Java, JavaScript, C, PHP, Python, awk, sed, the GNU regex libs, etc. Somehow other languages seem ok with this, because it's a widely-used convention. Perl 6's patterns are _not_ regexes anymore. But I doubt t

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Mark Reed
On 2005-10-21 1:54 PM, "Nate Wiger" <[EMAIL PROTECTED]> wrote: > BTW, C and PHP both use -> "still". C++ is probably more relevant than C, but since it inherited the syntax, same diff. But in their case the underlying form is still a dot; A->B is just syntactic sugar for (*A).B. The distinction

Fwd: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-21 Thread Rob Kinyon
Feh - I really need to get on gmail's case for providing a keystroke for "Reply to All". Rob -- Forwarded message -- From: Nate Wiger <[EMAIL PROTECTED]> Date: Oct 21, 2005 2:38 PM Subject: Re: $1 change issues [was Re: syntax for accessing multiple versions

Re: $1 change issues [was Re: syntax for accessing multiple versions of a module]

2005-10-26 Thread chromatic
On Thu, 2005-10-20 at 17:12 -0700, Nate Wiger wrote: > If Perl 6 is going to be successful, this means it must change the > fewest key things with the most benefits. I think there's an assumption here that not only do I not hold but I do not even understand. Suppose that I am a game developer wi