#!/usr/bin/perl -wl use strict; my %hash ; my $obj = new TiedHash(); tie(%hash , 'TiedHash') ; print "checking Hash...."; print 'BOOLHASH' if ( %hash ); print "checking Object...."; print 'BOOLOBJ' if ( $obj ); package TiedHash ; use overload 'bool' => sub{ print "BOOL"; return 1 ; } , '""' => sub{ print "STRING"; return 'tiedhash' ; } , ; sub TIEHASH { bless({}, __PACKAGE__ ) ;} sub new { return TIEHASH; } __END__ checking Hash.... checking Object.... BOOL BOOLOBJ