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