September 22, 1999 | Strong Typing | Slide #37 |
Octopus.pm:
package Octopus; use fields qw(tentacles hearts favorite_food); sub new { ... }
main.pl:
use Octopus; my $fenchurch = new Octopus; my Octopus $junko = new Octopus; # Note type declaration!
$fenchurch->{tentacles} = 8; $junko->{tentacles} = 8;
# This will generate a *run-time* error: $fenchurch->{noses} = 1;
No such array field at ...
# This will generate a *compile-time* error: $junko->{noses} = 1;
No such field "noses" in variable $var of type Octopus at ...
Next | Copyright © 1999 M-J. Dominus |