Hi,
Leopold Toetsch wrote:
> Jens Rieks wrote:
> > I've prepared a patch for it.
>
> Why do you change all to the longest declaration of Parrot_Interp?
because Brent 'Dax' Royal-Gordon wrote:
: The naming conventions say that struct
: Parrot_Interp should really be struct parrot_interp_t, but tha
Jens Rieks wrote:
I've prepared a patch for it.
Why do you change all to the longest declaration of Parrot_Interp?
We have in decreasing length
struct parrot_interp_t *
struct Parrot_Interp *
Parrot_Interp
Interp *
We need the structure declaration which could be 1) or 2) and we want a
short typ
[EMAIL PROTECTED] (Dan Sugalski) writes:
> my Joe $foo;
>
> emits the code that, at runtime, finds the class ID of whatever Joe's
> in scope, instantiates a new object of that class
Uh, is that right? I don't think that "my" is a constructor, more a typing
declarator.
--
Hi, this is Ken. Wh
hello,
sorry if this has been discussed before, I did a quick search in the
Archive and the summaries but can't find a similar topic.
I've just read A12, and while I really like the inherent orthogonality
of the whole object system as it is (will be) implemented, there is
something that puzzles m
At 11:29 PM +0100 4/22/04, Simon Cozens wrote:
[EMAIL PROTECTED] (Dan Sugalski) writes:
my Joe $foo;
emits the code that, at runtime, finds the class ID of whatever Joe's
in scope, instantiates a new object of that class
Uh, is that right? I don't think that "my" is a constructor, more a ty
On Fri, 2004-04-23 at 08:42, Dan Sugalski wrote:
> Since any type potentially has assignment behaviour, it has to be a
> constructor. For example, if you've got the Joe class set such that
> assigning to it prints the contents to stderr, this:
>
> my Joe $foo;
> $foo = 12;
>
> should p
Okay, I give. Against my better judgement, I'm declaring Unicode the
One True Character String Encoding Set Stuff Thingie. It's not quite
going to be as simple as that, as folks will likely track me down and
beat me if we utf-8 decode their JPEG data, and there's plenty of
non-Unicode data out
On Apr 23, 2004, at 5:42 AM, Dan Sugalski wrote:
At 11:29 PM +0100 4/22/04, Simon Cozens wrote:
[EMAIL PROTECTED] (Dan Sugalski) writes:
my Joe $foo;
emits the code that, at runtime, finds the class ID of whatever
Joe's
in scope, instantiates a new object of that class
Uh, is that right?
>>>You're welcome to try it again, though...while you're at it, you might
>>>as well make all internal Parrot functions take an Interp * instead of a
I hope there's #undef Interp in there somewhere. Or maybe even possibly
#ifdef Interp
#error EEEK SOMEONE ELSE HAS DEFINED Interp.
#endif
In othe
On Fri, Apr 23, 2004 at 08:42:28AM -0400, Dan Sugalski wrote:
: At 11:29 PM +0100 4/22/04, Simon Cozens wrote:
: >[EMAIL PROTECTED] (Dan Sugalski) writes:
: >> my Joe $foo;
: >>
: >> emits the code that, at runtime, finds the class ID of whatever Joe's
: >> in scope, instantiates a new object o
At 12:45 AM +0200 4/23/04, Jens Rieks wrote:
Hi,
On Thursday 22 April 2004 17:59, Brent 'Dax' Royal-Gordon wrote:
Nicholas Clark wrote:
> Pain being due to these two:
>
> struct Parrot_Interp;
>
> typedef struct Parrot_Interp *Parrot_Interp;
>
>
> This doesn't seem right.
It is and it is
At 6:48 PM +0300 4/23/04, Jarkko Hietaniemi wrote:
>>>You're welcome to try it again, though...while you're at it, you might
as well make all internal Parrot functions take an Interp * instead of a
I hope there's #undef Interp in there somewhere.
I hope it's not in there in the first place. The pr
Dan Sugalski wrote:
At 6:48 PM +0300 4/23/04, Jarkko Hietaniemi wrote:
>>>You're welcome to try it again, though...while you're at it, you
might
as well make all internal Parrot functions take an Interp * instead
of a
I hope there's #undef Interp in there somewhere.
I hope it's not in the
At 9:19 AM -0700 4/23/04, Brent 'Dax' Royal-Gordon wrote:
Dan Sugalski wrote:
At 6:48 PM +0300 4/23/04, Jarkko Hietaniemi wrote:
>>>You're welcome to try it again, though...while you're at it, you might
as well make all internal Parrot functions take an Interp * instead of a
I hope there's #u
On Fri, 2004-04-23 at 05:42, Dan Sugalski wrote:
> Since any type potentially has assignment behaviour, it has to be a
> constructor. For example, if you've got the Joe class set such that
> assigning to it prints the contents to stderr, this:
>
> my Joe $foo;
> $foo = 12;
>
> should p
Leopold Toetsch wrote:
Jens Rieks wrote:
I've prepared a patch for it.
Why do you change all to the longest declaration of Parrot_Interp?
We have in decreasing length
struct parrot_interp_t *
struct Parrot_Interp *
Parrot_Interp
Interp *
We need the structure declaration which could be 1) or
At 9:30 AM -0700 4/23/04, chromatic wrote:
On Fri, 2004-04-23 at 05:42, Dan Sugalski wrote:
Since any type potentially has assignment behaviour, it has to be a
constructor. For example, if you've got the Joe class set such that
assigning to it prints the contents to stderr, this:
my Joe $f
Brent 'Dax' Royal-Gordon wrote:
> Dan Sugalski wrote:
>
>>I hope it's not in there in the first place. The prefix needs to stay.
>
>
> The declaration has been (along the lines of)
>
> typedef struct Parrot_Interp {
> ...
> } Interp;
>
> for years. The Interp typedef is in
Guys,
I'll log a bug for this if need be, but I'd rather solve the problem myself
(with some help). I'm in the middle of writing a routine (MD5 hashing for
fun), and stumbled upon the following code generation problem in imcc.
In the attached code, I've got
$I10 = word & 0x00ff
$
At 8:03 PM +0300 4/23/04, Jarkko Hietaniemi wrote:
Brent 'Dax' Royal-Gordon wrote:
Dan Sugalski wrote:
I hope it's not in there in the first place. The prefix needs to stay.
The declaration has been (along the lines of)
typedef struct Parrot_Interp {
...
} Interp;
for
I've now reduced the code down to this, a much simpler example [don't expect
it to run!]
Regards,
Nick
.sub _md5_create_buffer
.param string str
.local int word
$I0 = length str
$I1 = $I0 / 64
$I2 = $I0 % 64
$I3 = 64 * $I1
word = 0
md5_create_buffer_loop:
>>This works as long as people (a) know of (b) stick to the policy
>>("Interp for internal use only") (c) No application embedding Parrot
>>has defined "Interp" themselves. Experience has shown that none of
>>these is likely to happen and/or stay that way for long :-)
>
>
> (c) is the reason for
On Apr 23, 2004, at 8:54 AM, Larry Wall wrote:
On Fri, Apr 23, 2004 at 08:42:28AM -0400, Dan Sugalski wrote:
: Since any type potentially has assignment behaviour, it has to be a
: constructor. For example, if you've got the Joe class set such that
: assigning to it prints the contents to stderr,
On Fri, 2004-04-23 at 04:25, Aldo Calpini wrote:
> class MyClass {
> has LethalWeapon $.dispatcher;
> method meta { say "$_ is doing meta!" }
> }
>
> both of them would make my class pretty useless, I think, since it could
> not (correctly, at least) dispatch methods anymo
On Wed, 2004-04-21 at 12:44, Abhijit A. Mahabal wrote:
> On Wed, 21 Apr 2004, Brent 'Dax' Royal-Gordon wrote:
> > Which actually brings up an interesting question:
> >
> > class Silly {
> > has $.thing=1;
> > has @.thing=(2, 3);
> > has %.thing=(4 => 5, 6 => 7);
> >
On Wed, 2004-04-21 at 12:17, chromatic wrote:
> * Add a disambiguatey method to PoliceDog that dispatches
> appropriately. (Insert handwavey "well you *could* do it this way or
> you *might* do it that way.")
I agree, but given that the average user should probably not have to
interact with the
On Fri, Apr 23, 2004 at 10:37:00AM -0400, Aaron Sherman wrote:
: It's a fine point... in the past, P5 and P6 have up-cased such
: constructs in order to warn of their semi-keywordishness (e.g. DESTROY
: or BUILD). I'm wondering why Larry chose to leave dispatcher and meta
: lower in this case.
Hmm
At 8:24 AM -0700 4/23/04, Larry Wall wrote:
On Fri, Apr 23, 2004 at 10:37:00AM -0400, Aaron Sherman wrote:
: It's a fine point... in the past, P5 and P6 have up-cased such
: constructs in order to warn of their semi-keywordishness (e.g. DESTROY
: or BUILD). I'm wondering why Larry chose to leave di
(re-post. for some reason the alias didn't work.)
Larry Wall skribis 2004-04-23 8:24 (-0700):
> On the third hand, maybe we should go for $obj._meta_ or some such.
I don't like _foo_ names. Once you shart having things with underscores,
it's only a matter of time before someone decides that _foo
Aaron Sherman wrote:
seen the "does b". You could assert the other way around:
class c { does a for <>; does b for <>; }
which is kind of nifty looking, but some may blanch at the dual meaning
for "for"
Funny how similar that is to
class c { does a handles <>; does b handles <>; }
--
B
On Fri, 2004-04-23 at 11:44, Brent 'Dax' Royal-Gordon wrote:
> Aaron Sherman wrote:
> > class c { does a for <>; does b for <>; }
> Funny how similar that is to
>
> class c { does a handles <>; does b handles <>; }
In "Relationship to Roles" A12 makes the point that delegation and rol
Aaron Sherman wrote:
> However, in existing CPAN modules that I happen to have in my cache at
> the moment:
>
> [...]
>
> So it's not THAT bad.
hmmm... I think you should probably also grep for modules that do something
like:
my $self = {
meta => 'something',
dispatche
On Thu, Apr 22, 2004 at 04:46:39PM -0400, Aaron Sherman wrote:
: Prototyping in P6 would seem to me to be easy, but not quite the
: default. You'd want an intermediary that did the MetaClass negotiation
: as you "derived" from an existing object. Or will that be in the core?
: Can you say:
:
:
On Thu, Apr 22, 2004 at 02:21:17PM -0500, Abhijit A. Mahabal wrote:
: This is actually a couple of questions:
: 1: can you extend roles by saying: role Set is extended {}
Perhaps. Classes and objects that have already composed the role
would have to be notified that they need to recalculate colli
On Fri, Apr 23, 2004 at 09:42:51AM -0700, Larry Wall wrote:
: : return $self.keys.grep { exists $other{$^a} }
:
: grepping a hash?
Sorry--looked at that cross-eyed. Of course you can grep the keys...
Larry
On Fri, 2004-04-23 at 12:02, Aldo Calpini wrote:
> if Perl5 objects are to be implemented somewhat 'transparently' in Perl6,
> things like:
>
> $obj->{meta}
>
> will become:
>
> $obj.meta
>
> when used from Perl6. or not?
True enough, but this was just a quick exploration of the likel
At 2:21 PM -0500 4/22/04, Abhijit A. Mahabal wrote:
This is actually a couple of questions:
1: can you extend roles by saying: role Set is extended {}
Parrot will allow this, so if Larry says OK you're fine. It may be
rather significantly expensive, however. (Not nearly as bad as, say,
adding an
> -Original Message-
> From: Aaron Sherman [mailto:[EMAIL PROTECTED]
>
> On Fri, 2004-04-23 at 11:44, Brent 'Dax' Royal-Gordon wrote:
> > Aaron Sherman wrote:
>
> > > class c { does a for <>; does b for <>; }
>
> > Funny how similar that is to
> >
> > class c { does a handles <>; d
A12 sez:
If your delegation object happens to be an array:
has @:handlers handles 'foo';
then something cool happens. In this case
Perl 6 assumes that your array contains a list of potential
handlers, and you just want to call the first one that
succeeds.
This is not clear, and I
On Thu, Apr 22, 2004 at 10:34:25AM -0400, Aaron Sherman wrote:
: But, what happens if I:
:
: {
: use bytes;
: my string $line = $filehandlelikething.getline;
: }
That might depend on how $filehandlelikething was opened. A filehandle
is going to return a st
Austin Hastings writes:
> A12 sez:
>
> If your delegation object happens to be an array:
>
> has @:handlers handles 'foo';
>
> then something cool happens. In this case
> Perl 6 assumes that your array contains a list of potential
> handlers, and you just want to call the first one
On Fri, Apr 23, 2004 at 01:15:51PM -0400, Austin Hastings wrote:
: A12 sez:
:
: If your delegation object happens to be an array:
:
: has @:handlers handles 'foo';
:
: then something cool happens. In this case
: Perl 6 assumes that your array contains a list of potential
: handlers,
Mention is made of a typed undef in A12:
which doesn't quite work, because $spot is undefined. What probably happens
is that the my cheats and puts a version of undef in there that knows it
should dispatch to the Dog class if you call .self:new() on it. Anyway,
we'll make it work one way or anoth
Austin Hastings skribis 2004-04-23 13:33 (-0400):
> I should then be able to call class methods of Dog via $spot without further
> initialization:
> print defined($spot); # FALSE
> $rover = $spot.new;
> @breeds = $spot.list_breeds;
But shouldn't you then just use "my Class $spot = Dog" the
On Fri, Apr 23, 2004 at 11:28:02AM -0600, Luke Palmer wrote:
: Though the hash "handles" handler hardly seems useful to me. Perhaps
: someone can explain what that's intended to accomplish.
No idea. It just seemed like it ought to be made to mean something.
On the other hand, maybe making %:han
Ok, so doing a 'parrot -d 8' shows that word doesn't seem to interfere with
$I13 as far as it is concerned ...
Dumping the Interf. graph:
---
...
word -> $I10 $I11 $I12 (3)
...
$I10 -> word (1)
$I11 -> word (1)
$I12 -> word (1)
$I13 -> (0)
...
I won
At 10:35 AM -0700 4/23/04, Jeff Clites wrote:
On Apr 23, 2004, at 8:54 AM, Larry Wall wrote:
On Fri, Apr 23, 2004 at 08:42:28AM -0400, Dan Sugalski wrote:
: Since any type potentially has assignment behaviour, it has to be a
: constructor. For example, if you've got the Joe class set such that
:
At 7:02 PM +0100 4/23/04, Nick Glencross wrote:
Ok, so doing a 'parrot -d 8' shows that word doesn't seem to
interfere with $I13 as far as it is concerned ...
Dumping the Interf. graph:
---
...
word -> $I10 $I11 $I12 (3)
...
$I10 -> word (1)
$I11 -> word (1
Juerd writes:
> Austin Hastings skribis 2004-04-23 13:33 (-0400):
> > I should then be able to call class methods of Dog via $spot without further
> > initialization:
> > print defined($spot); # FALSE
> > $rover = $spot.new;
> > @breeds = $spot.list_breeds;
>
> But shouldn't you then just
[EMAIL PROTECTED] (Austin Hastings) writes:
>
> which doesn't quite work, because $spot is undefined. What probably happens
> is that the my cheats and puts a version of undef in there that knows it
> should dispatch to the Dog class if you call .self:new() on it. Anyway,
> we'll make it work one
[EMAIL PROTECTED] (Jeff Clites) writes:
> So what does "$foo = 12" in that context actually mean in Perl6?
Another interesting question is "in Perl 6, are variables typed, values typed,
or a little of both?"
It seems that Parrot has been working primarily on the assumption that it's
values that a
> -Original Message-
> From: Larry Wall [mailto:[EMAIL PROTECTED]
>
> On Fri, Apr 23, 2004 at 01:15:51PM -0400, Austin Hastings wrote:
> : A12 sez:
> :
> : If your delegation object happens to be an array:
> :
> : has @:handlers handles 'foo';
> :
> : then something cool happens. I
Interestingly, the opaque shortcut used to be
$class.bless(undef, *%_);
But I made it 0 instead merely because it's shorter. That does, however,
free up "undef" as a way of asking for an explicitly undefined but
blessed value.
: There are potentially two flavors of undef:
:
: undef
:
:
On Fri, Apr 23, 2004 at 10:39:33AM -0700, Larry Wall wrote:
: On the other hand, maybe making %:handlers special is wrong, and it
I meant @:handlers there, of course. We all seem to be having a
little trouble with syntax today, doesn't us?
Larry
Note: We've moved past hyper-ops (I hope!), but there are still some
details in this post that deserve a response on tangential topics.
On Wed, 2004-04-21 at 11:52, Leopold Toetsch wrote:
> Aaron Sherman <[EMAIL PROTECTED]> wrote:
> > That's unrealistic.
>
> No. A real test.
Sorry, I was not c
> -Original Message-
> From: Juerd [mailto:[EMAIL PROTECTED]
>
> Austin Hastings skribis 2004-04-23 13:33 (-0400):
> > I should then be able to call class methods of Dog via $spot
> > without further initialization:
> > print defined($spot); # FALSE
> > $rover = $spot.new;
> > @br
On Fri, Apr 23, 2004 at 01:05:21PM -0400, Austin Hastings wrote:
: That seems like a good disambiguation marker, too:
:
: class Trog does Tree does Dog {...}
:
: # error: conflicting 'bark' methods
:
: class Trog
: is PersistentObject
: handles «meta dispatch SERIALIZE»
:
Nick Glencross <[EMAIL PROTECTED]> wrote:
> $I10 = word & 0x00ff
> $I11 = word & 0xff00
> $I12 = word & 0x00ff
> $I13 = word & 0xff00
> and the resulting code becomes
> band I17, I16, 0x00ff
> band I17, I16, 0xff00
> band
At 2:09 PM -0400 4/23/04, Aaron Sherman wrote:
As for the DOD: you have an excellent point, but it extends far beyond
the hyper-operators. I'm starting to think that front-ends like the
Python compiler or the Perl 6 compiler are going to need controls over
the DOD for just the reasons you cite. Aft
Leopold Toetsch wrote:
Well. That's it. Just use $I10 ... $I13 and they will stay what they
were. Put a print thereafter for debugging which uses these regs.
I should have emphasised the oddity a bit better.
'word' has mapped to I16 correctly, and I17 has been used for
$I10..$I12. That's fin
On Apr 23, 2004, at 11:04 AM, Simon Cozens wrote:
[EMAIL PROTECTED] (Jeff Clites) writes:
So what does "$foo = 12" in that context actually mean in Perl6?
Another interesting question is "in Perl 6, are variables typed,
values typed,
or a little of both?"
It seems that Parrot has been working pr
On Fri, Apr 23, 2004 at 12:46:04PM -0400, Dan Sugalski wrote:
: Sure, that's doable, as are a number of other things. Depends on the
: semantics of assignment to uninitialized types, though that's on a
: per-type basis. This all gets somewhat messy when you mix in objects
: and types, since what
On Fri, Apr 23, 2004 at 11:47:28AM -0700, Jeff Clites wrote:
: That's my worry--whether we have a problem. (No problem with typed
: values, of course.) If variables are typed, _and_ that typing is
: lexically scoped, then I think that we don't have a problem, and it can
: be handled at the compi
Aaron Sherman <[EMAIL PROTECTED]> wrote:
> What might be interesting is to compare Parrot to Parrot doing this with
> and without a hyper-operator. That's all I was trying to say.
I'd posted that as well. Here again with an O3 build of parrot:
$ time parrot ih.imc
6060
real0m0.214s
user
At 7:04 PM +0100 4/23/04, Simon Cozens wrote:
[EMAIL PROTECTED] (Jeff Clites) writes:
So what does "$foo = 12" in that context actually mean in Perl6?
Another interesting question is "in Perl 6, are variables typed, values typed,
or a little of both?"
It seems that Parrot has been working primaril
At 11:53 AM -0700 4/23/04, Larry Wall wrote:
On Fri, Apr 23, 2004 at 11:47:28AM -0700, Jeff Clites wrote:
: That's my worry--whether we have a problem. (No problem with typed
: values, of course.) If variables are typed, _and_ that typing is
: lexically scoped, then I think that we don't have a pro
On Fri, 2004-04-23 at 14:52, Leopold Toetsch wrote:
> Aaron Sherman <[EMAIL PROTECTED]> wrote:
>
> > What might be interesting is to compare Parrot to Parrot doing this with
> > and without a hyper-operator. That's all I was trying to say.
>
> I'd posted that as well. Here again with an O3 build
Nick Glencross <[EMAIL PROTECTED]> wrote:
> The problem is that $I13 has become *I16*, not (say) I17, so the line
> $I13 = word & 0xff00
> has actually had the side effect of changing 'word'.
Well C and C<$I13> or some such is the same for the compiler. Both
need a Parrot register allocatio
At 3:25 PM -0400 4/23/04, Aaron Sherman wrote:
That I did not know about, but noticed Dan pointing it out too. I'm
still learning a lot here,
It might be best, for everyone's peace of mind, blood pressure, and
general edification, to take a(nother) run through the documentation.
The stuff in docs
On Fri, Apr 23, 2004 at 03:14:47PM -0400, Dan Sugalski wrote:
: It also depends on whether the type is on the name or the container.
: Which is your call. :-P (Though, given my druthers, I'd leave it on
: the container)
We should certainly leave them on the container. The sin of rebinding
a nam
Aaron Sherman <[EMAIL PROTECTED]> wrote:
> On Fri, 2004-04-23 at 14:52, Leopold Toetsch wrote:
>>
>> I'd posted that as well. Here again with an O3 build of parrot:
> Oops, missed that. Thanks! I'm shocked by the difference in
> performance... it makes me wonder how efficient the optimization+JIT
On Fri, 2004-04-23 at 14:17, Larry Wall wrote:
> : does Tree
> : handles «bark»
> : does Dog
> That works in the case of an explicitly named method, since that
> effectively makes .bark a method in the current class. It would not
> work for a wildcard delegation though, unles
On Fri, Apr 23, 2004 at 02:07:16PM -0400, Austin Hastings wrote:
: I guess I'm more strongly attached to the sigil than I realized. IMO, if you
: have
:
: $obj handles 'a';
:
: and put an arrayref in $obj, then you get what's coming: iteration. But if
: you have
:
: @obj handles 'a';
:
: th
> -Original Message-
> From: Larry Wall [mailto:[EMAIL PROTECTED]
>
> On Fri, Apr 23, 2004 at 01:05:21PM -0400, Austin Hastings wrote:
> : That seems like a good disambiguation marker, too:
> :
> : class Trog does Tree does Dog {...}
> :
> : # error: conflicting 'bark' methods
> :
> :
> -Original Message-
> From: Larry Wall [mailto:[EMAIL PROTECTED]
>
> Interestingly, the opaque shortcut used to be
>
> $class.bless(undef, *%_);
>
> But I made it 0 instead merely because it's shorter. That does, however,
> free up "undef" as a way of asking for an explicitly undefi
On Fri, 2004-04-23 at 14:28, Aaron Sherman wrote:
> I would expect wildcard delegation not to care about method conflicts at
> all, since what's being done is, by its nature, much more dynamic
> anyway.
I misunderstood roles when I said this... I now get why this is a
problem, sorry.
--
Aaron S
On Fri, Apr 23, 2004 at 02:50:42PM -0400, Austin Hastings wrote:
: Sure, but "You haven't provided a value yet." doesn't seem very ...
: exceptional.
The important thing will be "You didn't provide a value at line 42, though
you didn't actually try to use it till line 582."
: Sure -- the class of
> -Original Message-
> From: Larry Wall [mailto:[EMAIL PROTECTED]
>
> On Fri, Apr 23, 2004 at 02:07:16PM -0400, Austin Hastings wrote:
> : I guess I'm more strongly attached to the sigil than I
> realized. IMO, if you
> : have
> :
> : $obj handles 'a';
> :
> : and put an arrayref in $ob
On Tue, 2004-04-20 at 10:13, John Siracusa wrote:
> On 4/19/04 7:20 PM, Larry Wall wrote:
> > On Mon, Apr 19, 2004 at 06:53:29PM -0400, John Siracusa wrote:
> > : Yeah, that's exactly what I don't want to type over and over :)
> >
> > I really don't understand what you're getting at here. First y
> -Original Message-
> From: Larry Wall [mailto:[EMAIL PROTECTED]
>
> On Fri, Apr 23, 2004 at 02:50:42PM -0400, Austin Hastings wrote:
> : Sure, but "You haven't provided a value yet." doesn't seem very ...
> : exceptional.
>
> The important thing will be "You didn't provide a value at li
> -Original Message-
> From: Aaron Sherman [mailto:[EMAIL PROTECTED]
> Sent: Friday, 23 April, 2004 03:12 PM
> To: John Siracusa
> Cc: Perl 6 Language
> Subject: Re: A12: default accessors and encapsulation
>
>
> On Tue, 2004-04-20 at 10:13, John Siracusa wrote:
> > On 4/19/04 7:20 PM, La
On Fri, Apr 23, 2004 at 03:18:22PM -0400, Austin Hastings wrote:
: > -Original Message-
: > From: Larry Wall [mailto:[EMAIL PROTECTED]
: >
: > On Fri, Apr 23, 2004 at 02:50:42PM -0400, Austin Hastings wrote:
: > : Sure, but "You haven't provided a value yet." doesn't seem very ...
: > : exc
On Fri, Apr 23, 2004 at 03:13:09PM -0400, Austin Hastings wrote:
: Can I declare a const reference and have it optimized away?
:
: class Queue {
: has @:elements;
: has $:array_delegate
: handles
: = \@:elements
: is const;
: }
I suppose, depending on what you mean
"Larry Wall" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> On Fri, Apr 23, 2004 at 02:50:42PM -0400, Austin Hastings wrote:
> : Sure, but "You haven't provided a value yet." doesn't seem very ...
> : exceptional.
>
> The important thing will be "You didn't provide a value at line 4
On Fri, 2004-04-23 at 15:46, Dave Whipp wrote:
> Just wondering, are we going to have semantics similar to the old NaN Vs
> Signaling-Nan in IEEE floating point? An IEE NaN has an N-bit field where
> the source of the NaN can place a value representing the reason for the NaN.
> It can also set a f
On Fri, Apr 23, 2004 at 12:46:07PM -0700, Dave Whipp wrote:
: I'm not sure how much of this is relevant to C, but it might be nice
: to have the ability to have an undef that says "if used, then trap" (using
: the current "use fail" mode -- if that still exists)
I suppose one could give a typed un
On Fri, Apr 23, 2004 at 03:23:09PM -0400, Austin Hastings wrote:
: > And if you override the accessor, you can:
: >
: > multi method foo(Str $blah = undef) is rw($new) {
: > (my($old),$.foo)=($.foo,$blah//$new);
: > .update_the_world_in_some_cool_way();
: > r
"Then we simply claim that, under multiple dispatch, the "long name" of
any multi routine includes its signature, and that visibility is based on
the long name." (paragraph 3, "Multiple Dispatch")
Is a routine's "returns" trait also included in a multi routine's "long
name"? That is, if I define
Austin Hastings wrote:
> Jonathan Lang wrote:
> > role A {has Cat $.x;}
> > role B {has Dog $.x;}
> > class Foo {does Cat; does Dog;}
> > my Foo $bar;
> > $bar.x; # Is this a Cat or a Dog?
>
>
> If, however, two roles try to introduce a method of the same name (for
> some definition of name), t
I'm trying to write some code, and I'm not finding certain ops. Now,
perhaps this is just that I don't know how to look for them, or perhaps
they have yet to be written, so please pardon my ignorance. These are
things that seem fairly atomic, and which exist in the C library. If
they truly don't ex
On Fri, Apr 23, 2004 at 02:20:20PM -0700, Jonathan Lang wrote:
: "Then we simply claim that, under multiple dispatch, the "long name" of
: any multi routine includes its signature, and that visibility is based on
: the long name." (paragraph 3, "Multiple Dispatch")
:
: Is a routine's "returns" tra
Is tacked on. Note that we *do* have to support as core languages
which don't force unicode universally (perl 5, python, and ruby)
*and* we have to support the writing of stream filters in pure
parrot, so the goal of 100% pure unadulterated Unicode except at the
very edge isn't attainable, no m
At 2:37 PM -0700 4/23/04, Jonathan Lang wrote:
Austin Hastings wrote:
Jonathan Lang wrote:
> role A {has Cat $.x;}
> role B {has Dog $.x;}
> class Foo {does Cat; does Dog;}
> my Foo $bar;
> $bar.x; # Is this a Cat or a Dog?
If, however, two roles try to introduce a method of the same nam
On Fri, Apr 23, 2004 at 02:37:58PM -0700, Jonathan Lang wrote:
: Note that the problem extends past accessors: a role's methods can access
: its attributes directly. So:
:
: role A {has Cat $.x; method m1 {return $.x;};}
: role B {has Dog $.x; method m2 {return $.x;};}
: class Foo {does Cat
Hi,
I'm kinda tied up with stuff, but just to flag up a Win32 build issue...
src\global_setup.c
global_setup.c
NMAKE : fatal error U1073: don't know how to make 'src\interpreter.str'
Stop.
At the end of A12, "Exportation" covered the idea that you will now say:
sub foo() is export {...}
Rather than the P5:
@EXPORT=qw(foo);
sub foo;
Which is fine, except that in P5 we could say:
use Foo qw(foo);
@EXPORT=qw(foo);
Now, I know that the Apoc o
On Fri, 2004-04-23 at 14:38, Aaron Sherman wrote:
> I'm trying to write some code, and I'm not finding certain ops.
> rand/srand
> sqrt
I was surprised not to see something like signbit. It's in my
config/gen/platform/generic/math.h.
Then again, I tend to skim documentation. :)
-
At 5:38 PM -0400 4/23/04, Aaron Sherman wrote:
I'm trying to write some code, and I'm not finding certain ops.
rand/srand
sqrt
Those are both missing, which is odd--I thought we had them in at one
point, and there's support code for random numbers in utils.c. There
is a random nu
Can role definitions be nested? That is:
role A {
role subRole1 {...};
role subRole2 {...};
...
};
As I see it, this ought to be equivelent to
role A::subRole1 {...};
role A::subRole2 {...};
role A {
does A::subRole1; does A::subRole2;
...
};
The advantage of
How would I declare a subtype of a class which messes with the dispatching
mechanism to exclude certain methods and/or roles from it?
=
Jonathan "Dataweaver" Lang
__
Do you Yahoo!?
Yahoo! Photos: High-quality 4x6 digital prints for
1 - 100 of 115 matches
Mail list logo