sub new { my ($class,$file,$answers,$grades,$script) = @_; #print "
in new: file: $file, grades: $grades
\n"; return bless {'file'=>$file,'answers'=>$answers,'gradefile'=>$grades,'script'=>$script},$class; } .... sub entergrades { my ($self,$person,$answers) = @_; my $afile = $self->{'answers'}; open(ANSWERS,"<$afile") or die "$afile: $!"; my $grades = $self->{'gradefile'}; open(GRADES,"<<$grades") or die "got error $! (".($!+0).")\n"; # problem right here ... }