in reply to Solving compositional problems with Perl 6 roles
$elf does Thief; # hmm ... that reads funny
Maybe that's because when we coudn't divorce the person from their actions, naming a (sub)class Thief made sense, but now we can have groups of actions that can be enacted by a range of People, maybe we should name such groups by the collective term for those actions:
my Elf $elf does Thieving;
And
my $indivual is Employee has HomeAddress, TelephoneNo, ParkingSpace does Program, Manage, FirstAid;
I wonder if P6 will allow lists to does, is, has and the like? It would certainly make the syntax more friendly.
Reads quite nicely, and seems quite intuative that if the employee gives up first aiding, removing that Role has little impact on the rest of his persona. Maybe:
$individual stops FirstAiding;
Then that dear old Elf from earlier sees the light and repents:
$elf stops Thieving;
Of course, it doesn't flow completely right. There would be no point in:
$indivual does Thieving;
Unless the compiler has the smarts to turn that into:
$individual isn't Employee;
:)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Solving compositional problems with Perl 6 roles
by dragonchild (Archbishop) on Aug 22, 2004 at 03:09 UTC | |
by BrowserUk (Patriarch) on Aug 22, 2004 at 03:45 UTC | |
by dragonchild (Archbishop) on Aug 23, 2004 at 12:16 UTC | |
|
Re^2: Solving compositional problems with Perl 6 roles
by Ovid (Cardinal) on Aug 22, 2004 at 06:09 UTC | |
by BrowserUk (Patriarch) on Aug 22, 2004 at 07:10 UTC |