Why my $dog :isa(Dog) and sub foo($dog :of(Dog)) { ... } and not my Dog $dog =... and my sub foo (Dog $dog)?
Perl has allowed my Dog $dog = ... forever (although it does nothing) and neither approach is supported in signatures right now so whatever we do there we have to do from scratch anyway.
I'm just wondering the thinking process that got us to the current spec.
Why
my $dog :isa(Dog)andsub foo($dog :of(Dog)) { ... }and notmy Dog $dog =...andmy sub foo (Dog $dog)?Perl has allowed
my Dog $dog = ...forever (although it does nothing) and neither approach is supported in signatures right now so whatever we do there we have to do from scratch anyway.I'm just wondering the thinking process that got us to the current spec.