#!/usr/bin/perl package MyHandle; sub TIEHANDLE { my $class = shift; return bless { @_ }, $class; } sub PRINT { my $self = shift; print STDERR "tied PRINT: @_\n"; # put your implementation here... } package main; tie *STDOUT, "MyHandle"; print "foo", "bar"; # "tied PRINT: foo bar" on STDERR