#!/usr/bin/perl use strict; use warnings; use Data::Dumper; package First; use Params::Validate qw(validate :types); our @EXPORT = qw(teller); our %params = ( 'A' => {'TYPE' => SCALAR}, 'B' => {'TYPE' => SCALAR} ); sub new { my ($class, @parameters) = @_; my $validate = {%params}; my $self = {validate(@parameters, $validate)}; return bless ($self,$class); } sub teller(){ my ($a) = shift; print Data::Dumper->Dump([$a]),"\n"; return 0; }