Re: class interface of roles

2006-10-19 Thread Ruud H.G. van Tol
Larry Wall schreef: I suspect ordered composition is going to be rare enough that we can simply dehuffmanize it to $x does A; $x does B; $x does C; Maybe use a list-like notation? $x does (A, B, C,) ; $x does (A ; B ; C) ; $x does [A, B, C,] ; $x does [A ; B ; C] ;

Re: class interface of roles

2006-10-19 Thread TSa
HaloO, Larry Wall wrote: You've got it inside out. Unordered is just does A | B | C or some such, the | there really being coerced to a set construction, not a junction. In fact, would work just as well. I only used | because it's more readable. Autocoercion of junctions to sets is, of

Re: class interface of roles

2006-10-19 Thread TSa
HaloO TSa wrote: I would like does A B C mean the intersection type of A, B and C. That is a supertype of all three roles. In addition we might need negation to get what Jonathan Lang envisoned for the Complex type that does Num !Comparable. IOW, I'm opting for a role combination syntax by

Re: class interface of roles

2006-10-19 Thread Jonathan Lang
Ruud H.G. van Tol wrote: Larry Wall schreef: I suspect ordered composition is going to be rare enough that we can simply dehuffmanize it to $x does A; $x does B; $x does C; Maybe use a list-like notation? What happens when you try to mix ordered and unordered composition?

Re: class interface of roles

2006-10-19 Thread Jonathan Lang
TSa wrote: And while we're at it, could we also introduce the subtype operator : and perhaps : as the supertype operator? This would come in handy for expressing type constraints in does clauses. Isn't one of those called .does()? -- Jonathan Dataweaver Lang

Re: class interface of roles

2006-10-19 Thread TSa
HaloO, Hmm, no one seems to read the article! There actually is another class GenLocSquare that combines GenSquare and GenPointMixin. With that we get a modified version of my code as follows: role GenEqual { method equal( : GenEqual $ -- Bool ) {...} } role GenPointMixin { has Int $.x;

Re: class interface of roles

2006-10-19 Thread Dr.Ruud
Jonathan Lang schreef: role R does A does B does C { ... } # unordered composition $x does A does B does C; # ordered composition $y does A | B | C; # unordered composition I'd like to see it done something like: role R does A does B does C { ... } # unordered composition

Re: [QUESTION] PMC Pre-allocation

2006-10-19 Thread Karl Forner
On 10/18/06, Leopold Toetsch [EMAIL PROTECTED] wrote: IMHO the only way to get rid of this historical confusion is: - disable the set opcode for arrays by throwing an exception in the vtable - use elements for getting .elems only - implement 2 new opcodes elements P0, I0# fill with

classnames and HLL namespaces -- help!

2006-10-19 Thread Patrick R. Michaud
First, my apologies to Chip for this message -- I know he's probably already answered this question for me a couple of times but I've either forgotten, I'm too dense, or I just can't find the answers now that I need them. So, with appropriate contrition for asking yet again... After the changes

[HOWTO] add a C file to get archived in libparrot.a

2006-10-19 Thread Karl Forner
Hi, I've added one C src file, say src/foo.c, and include/parrot/foo.h, and a test in t/src/foo.t. I've changed the MANIFEST file accordingly, but I can not manage to have my foo.o file to be added in libparrot.a (after a make clean;perl Configure.pl ;make) What did I miss ? Thanks, Karl

Re: class interface of roles

2006-10-19 Thread Jonathan Lang
Larry Wall wrote: Though actually, now that I think about it, the cascaded notation in S12 is illegal according to S03, since does is classified as non-chaining, which implies non-associative. Wait a minute. Isn't chaining specifically referring to the idea that A op B op C implicitly becomes

set operations for roles

2006-10-19 Thread Jonathan Lang
In class interface of roles, Dr.Ruud wrote: And I was on the line of: role R does A | B | C { ... } # unordered composition $x does ( A, B, C ) ; # ordered composition $y does A | B | C ; # unordered composition but I would like early and late binding to be

Interrogative statements

2006-10-19 Thread Jonathan Lang
Let's say that I want $expression?; to mean the same thing as the statement $_ = $expression; That is, any statement that ends with a '?;' instead of a ';' evaluates in scalar context instead of void context and stores the result as the topic '$_'. (I was going to suggest '?' intead of

Re: classnames and HLL namespaces -- help!

2006-10-19 Thread Matt Diephouse
Patrick R. Michaud [EMAIL PROTECTED] wrote: According to pdd21, each HLL gets its own hll_namespace. PGE is really a form of HLL compiler, so it should have its own hll_namespace, instead of using parrot's hll namespace: .HLL 'pge', '' I don't know that that's necessarily the case, but

Re: classnames and HLL namespaces -- help!

2006-10-19 Thread Patrick R. Michaud
On Thu, Oct 19, 2006 at 10:01:29PM -0400, Matt Diephouse wrote: Patrick R. Michaud [EMAIL PROTECTED] wrote: According to pdd21, each HLL gets its own hll_namespace. PGE is really a form of HLL compiler, so it should have its own hll_namespace, instead of using parrot's hll namespace:

Re: Re: classnames and HLL namespaces -- help!

2006-10-19 Thread Matt Diephouse
Patrick R. Michaud [EMAIL PROTECTED] wrote: On Thu, Oct 19, 2006 at 10:01:29PM -0400, Matt Diephouse wrote: This is unspecced. ATM, all classes go into the 'parrot' HLL. This is a relic of the past and I think it needs to change. I'm pretty sure that HLL classes will have to go into the

Re: Re: classnames and HLL namespaces -- help!

2006-10-19 Thread Patrick R. Michaud
On Thu, Oct 19, 2006 at 11:20:56PM -0400, Matt Diephouse wrote: Patrick R. Michaud [EMAIL PROTECTED] wrote: On Thu, Oct 19, 2006 at 10:01:29PM -0400, Matt Diephouse wrote: ATM, all classes go into the 'parrot' HLL. [...] I'm pretty sure that HLL classes will have to go into the HLL's root

Re: [perl #40564] [TODO] fix perlcritic Subroutines::RequireFinalReturn policy

2006-10-19 Thread Chris Dolan
On Oct 18, 2006, at 4:27 PM, Jerry Gay (via RT) wrote: currently, this policy does not ignore subs which exit or die... it forces the addition of a return statement in these subs. yuck. this policy will be disabled until this is fixed. ~jerry Fixed in Perl::Critic svn r737. This will appear