use strict; use warnings; use Scalar::Util qw/dualvar/; use Hash::Util::FieldHash qw/id id_2obj register/; use Time::Piece; register my $t = Time::Piece::localtime; # Time::Piece object my $x = dualvar( id( $t ), "$t" ); print "$x = ", (id_2obj($x+0))->epoch, " seconds since the epoch\n"