Re: Defaulting params

2002-04-10 Thread Damian Conway
> Ooh. Multiple dispatch is definitely in then? Not definite yet. That was a subjunctive "could". ;-) But I'm very hopeful, since it's hard to user-implement things like C unless you can give a subroutine several distinct signatures. Damian

Re: Defaulting params

2002-04-10 Thread Piers Cawley
Damian Conway <[EMAIL PROTECTED]> writes: > Piers wrote: > >> one could always handle the first case >> more explicitly by doing: >> >>sub load_data ($filename; $version) { >> $version = 1 if @_.length < 2; >> ... >>} > > Err...no. If you specify named parameters, you don't g

Re: Defaulting params

2002-04-10 Thread Damian Conway
Piers wrote: > one could always handle the first case > more explicitly by doing: > >sub load_data ($filename; $version) { > $version = 1 if @_.length < 2; > ... >} Err...no. If you specify named parameters, you don't get @_. It could be handled by overloading though:

Re: Defaulting params

2002-04-10 Thread Luke Palmer
On Thu, 11 Apr 2002, Piers Cawley wrote: > "Miko O'Sullivan" <[EMAIL PROTECTED]> writes: > > The current plans indicate that a subroutine's params should be defaulted > > like this: > > > >sub load_data ($filename ; $version / /= 1) {...} > > > > (The space between / and / is on purpose, my e

Re: Unary dot

2002-04-10 Thread Luke Palmer
> Ah, but I think the mnemonic value of the '.' more than earns its keep > here. C is doing a slightly different job > anyway. And instance variables are *not* the same as 'normal' > variables, they hang off a different symbol table (or syte, to use > Damian's oh so clever term from Perl 5+i) and

Re: Defaulting params

2002-04-10 Thread Piers Cawley
"Miko O'Sullivan" <[EMAIL PROTECTED]> writes: > The current plans indicate that a subroutine's params should be defaulted > like this: > >sub load_data ($filename ; $version / /= 1) {...} > > (The space between / and / is on purpose, my emailer has problems if > they are together.) If that's

Re: Unary dot

2002-04-10 Thread Piers Cawley
Luke Palmer <[EMAIL PROTECTED]> writes: >> > $.foo >> >> It's already defined as an instance variable. > > I don't think I like that. Instance variables are far more common that > class variables, so why not just $foo, and you could use a compile-time > property for class variables. Lik

Re: Unary dot

2002-04-10 Thread Piers Cawley
Damian Conway <[EMAIL PROTECTED]> writes: [...] > Reflecting on this, it seems that it would be useful if methods > implicitly did their default topicalization-of-invocant like so: > > -> $self > > rather than just: > > -> $_ > > That is, that as well as aliasing the invocant to $_,

Re: Unary dot

2002-04-10 Thread Melvin Smith
At 04:01 PM 4/10/2002 -0600, Luke Palmer wrote: > > > $.foo > > > > It's already defined as an instance variable. > >I don't think I like that. Instance variables are far more common that >class variables, so why not just $foo, and you could use a compile-time >property for class variables. L

Re: Unary dot

2002-04-10 Thread Allison Randal
On Thu, Apr 11, 2002 at 12:01:58PM +1000, Damian Conway wrote: > Allison Randal wrote: > > > H... this being the case, is there any reason we should ever need to > > name the invocant explicitly? > > Yes. To make it read-writable. Curses! Foiled again! :) > Perl makes that much easier th

Re: Unary dot

2002-04-10 Thread Damian Conway
Allison Randal wrote: > H... this being the case, is there any reason we should ever need to > name the invocant explicitly? Yes. To make it read-writable. Perl makes that much easier than most other languages, because you can pass the invocant by (writable) reference, so you don't need to

Re: Unary dot

2002-04-10 Thread Allison Randal
On Thu, Apr 11, 2002 at 08:04:56AM +1000, Damian Conway wrote: > > Reflecting on this, it seems that it would be useful if methods > implicitly did their default topicalization-of-invocant like so: > > -> $self > > rather than just: > > -> $_ > > That is, that as well as aliasing

Defaulting params

2002-04-10 Thread Miko O'Sullivan
The current plans indicate that a subroutine's params should be defaulted like this: sub load_data ($filename ; $version / /= 1) {...} (The space between / and / is on purpose, my emailer has problems if they are together.) If that's the technique, how does the caller indicate that the secon

RE: Unary dot

2002-04-10 Thread David Whipp
Melvin Smith wrote > I think that would be just plain bad design, but I'd be happy > if someone showed me a use for it. :) well, I've been known to do sub UNIVERSAL::debug { my $self = shift; my $msg = "@_"; eval {$self=$self->name} if ref($self); my $timestamp = ...; my

Re: Unary dot

2002-04-10 Thread Melvin Smith
At 08:04 AM 4/11/2002 +1000, Damian Conway wrote: >And welcome back to where we started! ;-) Wow there is a lot of blood on the ground here. Must have been messy... :) >Of course, the problem is then: what should the name of this topicalizer >variable be? The main options are: > > $self

Re: Unary dot

2002-04-10 Thread Melvin Smith
At 07:54 PM 4/10/2002 +0100, Piers Cawley wrote: >Graham Barr <[EMAIL PROTECTED]> writes: > > > On Wed, Apr 10, 2002 at 01:35:22PM -0400, Mark J. Reed wrote: > >> On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > >> > method m1 > >> > { > >> >m2; # calls method m2 in the same

Re: Unary dot

2002-04-10 Thread Melvin Smith
At 07:40 PM 4/10/2002 +0100, Piers Cawley wrote: >Melvin Smith <[EMAIL PROTECTED]> writes: > > > At 10:50 AM 4/10/2002 -0700, Glenn Linderman wrote: > >>"Mark J. Reed" wrote: > >> > > >> > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > >> > > method m1 > >> > > { > >> > >m2

Re: Unary dot

2002-04-10 Thread Allison Randal
On Thu, Apr 11, 2002 at 08:04:56AM +1000, Damian Conway wrote: > Allison wrote: > > > >$self.foo() => $self->foo() # and can be .foo() when $self is $_ > >.foo() => $_->foo() # but might be altered by a pragma > >foo() => foo() > > > And welcome back to where we started! ;-) Exact

Re: Unary dot

2002-04-10 Thread Damian Conway
Allison wrote: > > > > "David Whipp" <[EMAIL PROTECTED]> writes: > > > > > > > Thus, the perl5 transalations would be: > > > > > > > > foo() => $self->foo() > > > > .foo() => $_->foo() > > > > &foo() => foo() > > > > ... > > Alternative: > >$self.foo() => $self->foo() # and can be .

Re: Unary dot

2002-04-10 Thread Luke Palmer
> > $.foo > > It's already defined as an instance variable. I don't think I like that. Instance variables are far more common that class variables, so why not just $foo, and you could use a compile-time property for class variables. Like C as discussed. That or C. I think the latter mak

Re: Unary dot

2002-04-10 Thread Allison Randal
> > "David Whipp" <[EMAIL PROTECTED]> writes: > > > > > Thus, the perl5 transalations would be: > > > > > > foo() => $self->foo() > > > .foo() => $_->foo() > > > &foo() => foo() > > > ... Alternative: $self.foo() => $self->foo() # and can be .foo() when $self is $_ .foo() => $_->f

Re: Unary dot

2002-04-10 Thread Allison Randal
On Wed, Apr 10, 2002 at 09:23:23PM +0100, Piers Cawley wrote: > "David Whipp" <[EMAIL PROTECTED]> writes: > > > Thus, the perl5 transalations would be: > > > > foo() => $self->foo() > > .foo() => $_->foo() > > &foo() => foo() > > ... > > For reasons that I can't quite put my finger on at

Re: I'll show you mine...

2002-04-10 Thread raptor
great idea :") I've just tried gnuCash program and think it is very cool (i've enjoyed to take first steps in double-entry accounting, i was always wondering what the hell is this :") )... http://www.ncsysadmin.org/july2001/ncsa-gnucash-talk.html#toc1 (very entertaining intro :") ) Meanw

Re: Unary dot

2002-04-10 Thread Allison Randal
On Wed, Apr 10, 2002 at 03:49:44PM -0400, Mark J. Reed wrote: > On Wed, Apr 10, 2002 at 02:42:58PM -0500, Allison Randal wrote: > > > I like the following, assumed to be within method m1: > > > > > > ..m2(); # call m2 the same way m1 was called, instance or class > > > > This has already be

Re: Unary dot

2002-04-10 Thread Me
> The following syntaxes have been seen: > > foo() > .foo() > ..foo() ## rejected because ".." is different binary op > class.foo() > FooClass.foo() > ::foo() > Package::foo() > $foo() > $_.foo() With a nod to Piers, and with apologes if this is silly in the context of Perl 6 syntax, wh

Re: Unary dot

2002-04-10 Thread Piers Cawley
"David Whipp" <[EMAIL PROTECTED]> writes: > Piers Cawley >> > This may be a case of keep up at the back, but if that is a >> method call, >> > how do I call a subroutine from within a method ? >> >> [...] >> >> Yes, I know there's several different ways I could do it, but this >> approach fee

RE: Unary dot

2002-04-10 Thread David Whipp
Piers Cawley > > This may be a case of keep up at the back, but if that is a > method call, > > how do I call a subroutine from within a method ? > > [...] > > Yes, I know there's several different ways I could do it, but this > approach feels right. I think this comes does to huffmann encodi

Re: Unary dot

2002-04-10 Thread Piers Cawley
"Mark J. Reed" <[EMAIL PROTECTED]> writes: > On Wed, Apr 10, 2002 at 07:57:01PM +0100, Piers Cawley wrote: >> > ::m2; # calls global subroutine main::m2 >> > main::m2; # calls global subroutine main::m2 >> >> This is looking more and more horrible Glenn. > I think we need to back off of unmarked

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 02:42:58PM -0500, Allison Randal wrote: > > I like the following, assumed to be within method m1: > > > > ..m2();# call m2 the same way m1 was called, instance or class > > This has already been semi-rejected. I agree with the reasoning. Not > that it wouldn't be

Re: none

2002-04-10 Thread Piers Cawley
Ashley Winters <[EMAIL PROTECTED]> writes: >> Patches welcome. > > Excellent... > > Forgive any formatting errors, I have mail issues. Thanks, applying. With a few caveats. > @@ -62,6 +62,7 @@ > class SchemePair is SchemeExpr { >my $nil //= class is SchemeExpr { > method is_nil {1} >

Re: Unary dot

2002-04-10 Thread Allison Randal
On Wed, Apr 10, 2002 at 03:03:45PM -0400, Mark J. Reed wrote: > On Wed, Apr 10, 2002 at 07:57:01PM +0100, Piers Cawley wrote: > > > ::m2; # calls global subroutine main::m2 > > > main::m2; # calls global subroutine main::m2 > > > > This is looking more and more horrible Glenn. > I think we need t

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 12:12:56PM -0700, David Whipp wrote: > Mark J. Reed wrote > > On Wed, Apr 10, 2002 at 03:03:45PM -0400, Mark J. Reed wrote: > > > ..class.m2: # call static m2 within m1's class, regardless > > of how m1 was called > > Typo. That should be just .class.m2, only one leading

RE: Unary dot

2002-04-10 Thread David Whipp
Mark J. Reed wrote > On Wed, Apr 10, 2002 at 03:03:45PM -0400, Mark J. Reed wrote: > > ..class.m2: # call static m2 within m1's class, regardless > of how m1 was called > Typo. That should be just .class.m2, only one leading '.'. Wouldn't that be the current topic's class? Dave.

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 03:03:45PM -0400, Mark J. Reed wrote: > ..class.m2: # call static m2 within m1's class, regardless of how m1 was called Typo. That should be just .class.m2, only one leading '.'. -- Mark J. REED<[EMAIL PROTECTED]>

Re: Unary dot

2002-04-10 Thread Allison Randal
On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > Allison Randal wrote: > > > > Direction 2 moves into the more exciting but scarier realm of alternate > > defaults. > > It could, but how about an alternative? Ah-ha, yet a third Direction! > Need there be a unary dot to speci

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 07:57:01PM +0100, Piers Cawley wrote: > > ::m2; # calls global subroutine main::m2 > > main::m2; # calls global subroutine main::m2 > > This is looking more and more horrible Glenn. I think we need to back off of unmarked subroutines becoming a method call. That one extr

Re: Unary dot

2002-04-10 Thread Piers Cawley
Glenn Linderman <[EMAIL PROTECTED]> writes: > Graham Barr wrote: >> >> On Wed, Apr 10, 2002 at 01:35:22PM -0400, Mark J. Reed wrote: >> > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: >> > > method m1 >> > > { >> > >m2; # calls method m2 in the same class >> > Yes, but do

Re: Unary dot

2002-04-10 Thread Piers Cawley
Graham Barr <[EMAIL PROTECTED]> writes: > On Wed, Apr 10, 2002 at 01:35:22PM -0400, Mark J. Reed wrote: >> On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: >> > method m1 >> > { >> >m2; # calls method m2 in the same class >> Yes, but does it call it as an instance method on t

Re: Unary dot

2002-04-10 Thread Glenn Linderman
Graham Barr wrote: > > On Wed, Apr 10, 2002 at 01:35:22PM -0400, Mark J. Reed wrote: > > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > > method m1 > > > { > > >m2; # calls method m2 in the same class > > Yes, but does it call it as an instance method on the current inv

Re: Unary dot

2002-04-10 Thread Graham Barr
On Wed, Apr 10, 2002 at 01:35:22PM -0400, Mark J. Reed wrote: > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > method m1 > > { > >m2; # calls method m2 in the same class > Yes, but does it call it as an instance method on the current invocant > or as a class method with

Re: Unary dot

2002-04-10 Thread Piers Cawley
Melvin Smith <[EMAIL PROTECTED]> writes: > At 10:50 AM 4/10/2002 -0700, Glenn Linderman wrote: >>"Mark J. Reed" wrote: >> > >> > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: >> > > method m1 >> > > { >> > >m2; # calls method m2 in the same class >> > Yes, but does it call

Re: I'll show you mine...

2002-04-10 Thread Piers Cawley
Melvin Smith <[EMAIL PROTECTED]> writes: > At 09:23 AM 4/10/2002 +0100, Piers Cawley wrote: >>Okay, this is the beginnings of Scheme in Perl6. I'm sure there's >>stuff I'm getting wrong. I've not written the parser yet for instance > > Very nice! Quite a sample, maybe Larry/Damian can use this >

Re: Unary dot

2002-04-10 Thread Melvin Smith
At 10:50 AM 4/10/2002 -0700, Glenn Linderman wrote: >"Mark J. Reed" wrote: > > > > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > > method m1 > > > { > > >m2; # calls method m2 in the same class > > Yes, but does it call it as an instance method on the current invocant >

Re: Unary dot

2002-04-10 Thread Glenn Linderman
David Whipp wrote: > > Mark J. Reed wrote: > > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > > method m1 > > > { > > >m2; # calls method m2 in the same class > > Yes, but does it call it as an instance method on the current invocant > > or as a class method with no inv

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 10:50:52AM -0700, Glenn Linderman wrote: > > Yes, but does it call it as an instance method on the current invocant > > or as a class method with no invocant? If the former, how would you > > do the latter? > > Should both be allowed to exist? Do both exist? Why do both

Re: Unary dot

2002-04-10 Thread Glenn Linderman
"Mark J. Reed" wrote: > > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > method m1 > > { > >m2; # calls method m2 in the same class > Yes, but does it call it as an instance method on the current invocant > or as a class method with no invocant? If the former, how woul

RE: Unary dot

2002-04-10 Thread David Whipp
Mark J. Reed wrote: > On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > > method m1 > > { > >m2; # calls method m2 in the same class > Yes, but does it call it as an instance method on the current invocant > or as a class method with no invocant? If the former, how would you

Re: Unary dot

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 10:30:25AM -0700, Glenn Linderman wrote: > method m1 > { >m2; # calls method m2 in the same class Yes, but does it call it as an instance method on the current invocant or as a class method with no invocant? If the former, how would you do the latter? >.m2; # sy

Re: Unary dot

2002-04-10 Thread Glenn Linderman
Allison Randal wrote: > > On Tue, Apr 09, 2002 at 09:56:02PM +0100, Piers Cawley wrote: > > Larry Wall <[EMAIL PROTECTED]> writes: > > > > > We're talking about how to make .foo mean self.foo regardless of the > > > current topic. > > > > Are we? I was looking for a way to unambgiously access the

Re: I'll show you mine...

2002-04-10 Thread Melvin Smith
At 09:23 AM 4/10/2002 +0100, Piers Cawley wrote: >Okay, this is the beginnings of Scheme in Perl6. I'm sure there's >stuff I'm getting wrong. I've not written the parser yet for instance Very nice! Quite a sample, maybe Larry/Damian can use this in one of the next $(A,E)'s > my SchemeExpr $.v

Re: Unary dot

2002-04-10 Thread Allison Randal
On Tue, Apr 09, 2002 at 09:56:02PM +0100, Piers Cawley wrote: > Larry Wall <[EMAIL PROTECTED]> writes: > > > We're talking about how to make .foo mean self.foo regardless of the > > current topic. > > Are we? I was looking for a way to unambgiously access the current > object in such a way that

Re: I'll show you mine...

2002-04-10 Thread Dan Sugalski
At 3:49 PM +0100 4/10/02, Piers Cawley wrote: >Aaron Sherman <[EMAIL PROTECTED]> writes: > > Your idea at the end of regugitating the code back out as Parrot or Perl >> is just slightly stunning on its own. > >I thought that was the easy bit. The compiler just (for appropriate >values of 'just'

Re: I'll show you mine...

2002-04-10 Thread Piers Cawley
Aaron Sherman <[EMAIL PROTECTED]> writes: > On Wed, 2002-04-10 at 10:03, Piers Cawley wrote: >> In message <[EMAIL PROTECTED]>, I wrote: >> > [ A huge wodge of possible perl 6 code ] >> >> I'm getting that Warnock's Dilemma feeling here... Did I stun you >> all into silence? > > On my clock, you

Re: I'll show you mine...

2002-04-10 Thread Aaron Sherman
On Wed, 2002-04-10 at 10:03, Piers Cawley wrote: > In message <[EMAIL PROTECTED]>, I wrote: > > [ A huge wodge of possible perl 6 code ] > > I'm getting that Warnock's Dilemma feeling here... Did I stun you all > into silence? On my clock, your original message arrived at 04:23, and your followu

Re: I'll show you mine...

2002-04-10 Thread Dan Sugalski
At 3:03 PM +0100 4/10/02, Piers Cawley wrote: >In message <[EMAIL PROTECTED]>, I wrote: >> [ A huge wodge of possible perl 6 code ] > >I'm getting that Warnock's Dilemma feeling here... Did I stun you all >into silence? Nah. You just can't hear the people running away screaming from there. ;-P -

Re: I'll show you mine...

2002-04-10 Thread Piers Cawley
In message <[EMAIL PROTECTED]>, I wrote: > [ A huge wodge of possible perl 6 code ] I'm getting that Warnock's Dilemma feeling here... Did I stun you all into silence? -- Piers "It is a truth universally acknowledged that a language in possession of a rich syntax must be in need of a re

Re: Bracekets

2002-04-10 Thread Mark J. Reed
On Wed, Apr 10, 2002 at 04:03:29PM +1000, Damian Conway wrote: > My understanding was that perl6 would default to Perl 6 (*not* Perl 5), unless > the first thing it encountered was a: > > package Whatever; > > statement. If so, that's a change, at least from what I gleaned by following th

I'll show you mine...

2002-04-10 Thread Piers Cawley
Okay, this is the beginnings of Scheme in Perl6. I'm sure there's stuff I'm getting wrong. I've not written the parser yet for instance and I'm toying with waiting for A5 before I do. Also, I've not yet implemented such important stuff as proper closures/lambda or the environment chain, but the un