package NewScalar;
require Tie::Scalar;

@ISA = (Tie::Scalar);

sub FETCH { ... }           # Provides additional method
sub TIESCALAR { ... }       # Overrides inherited method

package NewStdScalar;
require Tie::Scalar;

@ISA = (Tie::StdScalar);

sub FETCH { ... }

package main;

tie $new_scalar, "NewScalar";
tie $new_std_scalar, "NewStdScalar";
*****
tie $scalar, classname, LIST
