in reply to Printing slice of anonymous hash within hash

Your problem is that (syntactically speaking) your slice happens before you get a chance to dereference.

Try adding braces, like this:

%x = ( abc => { ip => v1.2.3.4, last_time => 'today' }, def => { ip => v5.6.7.8, last_time => 'yesterday ' }, ); @y = @{$x{def}}{'last_time', 'ip'};