##
use attributes ();
attributes::->import(Canine => \$spot, "Watchful");
=cut
##
##
use warnings;
use strict;
package Dog;
sub MODIFY_SCALAR_ATTRIBUTES {
my $class = shift;
my $ref = shift;
my %dog;
@dog{@_} = (1) x @_;
$$ref = \%dog;
bless $$ref, $class;
print "Woof!\n";
();
}
##
##
package main;
my Dog $spot :Watchful Muddy;
my $izzie = ref $spot;
print $izzie? "$izzie Spot is @{[keys %$spot]}": "No Spot", $/;
##
##
my Dog $rover;