Re: RFC 337 (v1) Common attribute system to allow user-defined, extensible attributes

2000-09-29 Thread Nathan Wiger

  =head1 TITLE
 
  Common attribute system to allow user-defined, extensible attributes
 
 Err... have you read perldoc attributes? There's already a mechanism
 for doing this (see my japh), though it is a complete PITA to use and
 I'd like to see it tidied up (and possibly have attributes.pm
 reimplemented, I've got a few ideas, bear with me I may have code
 later that does what you want...)

 --
 Piers
 sub MODIFY_CODE_ATTRIBUTES {print "@_[2..$#_].\n";()}
 sub MODIFY_CODE_ATTRIBUTES : Just another Perl hacker

Yeah, I've gotta start clarifying my RFC's. I wrote that as a
brainstorm; with 40 to keep track of my head is spinning.

I have seen 'use attributes'. The syntax I used in the RFC was
intentionally not following 'use attributes' because I was dealing with
implementation, not declaration. And by implementation, I mean messing
with internals.

I mentioned it in an email, but neglected to say so here, but the idea
was through XS or Inline or whatever is used to extend Perl 6, there
should be some way of declaring inheritable attributes that can actually
mess with Perl's internals and twist them into obscene "we wish we were
Java" semantics.

Beyond that, I don't have much concrete. Code that could do this would
obviously be cool. ;-)

-Nate



Re: RFC 337 (v1) Common attribute system to allow user-defined, extensible attributes

2000-09-29 Thread Piers Cawley

Perl6 RFC Librarian [EMAIL PROTECTED] writes:

 This and other RFCs are available on the web at
   http://dev.perl.org/rfc/
 
 =head1 TITLE
 
 Common attribute system to allow user-defined, extensible attributes
 
 =head1 VERSION
 
   Maintainer: Nathan Wiger [EMAIL PROTECTED]
   Date: 28 Sep 2000
   Mailing List: [EMAIL PROTECTED]
   Number: 337
   Version: 1
   Status: Developing
 
 =head1 ABSTRACT
 
 Camel-3 and others have proposed a syntax for declaring variables like
 so:
 
my type $var :attr1 :attr2 = $val;
 
 However, nobody has really nailed down what C:attr1 and C:attr2 are
 supposed to do. This takes a shot at it, since this could simplify the
 implementation of BRFC 188, BRFC 336, BRFC 163, and others.

Err... have you read perldoc attributes? There's already a mechanism
for doing this (see my japh), though it is a complete PITA to use and
I'd like to see it tidied up (and possibly have attributes.pm
reimplemented, I've got a few ideas, bear with me I may have code
later that does what you want...)

-- 
Piers
sub MODIFY_CODE_ATTRIBUTES {print "@_[2..$#_].\n";()} 
sub MODIFY_CODE_ATTRIBUTES : Just another Perl hacker