This is the use, which would you rather have to type?
use Data::Dump qw/ dd /; { my @blah; $blah[0] = []; $blah[0][$i] = []; $blah[0][$i][$j] = []; $blah[0][$i][$j][$k] = {}; $blah[0][$i][$j][$k]{life} = 42; dd( \@blah ); } { my @blah; $blah[0][$i][$j][$k]{life} = 42; dd( \@blah ); } __END__

The same in javascript* where they don't have autovivification

$blah[0] = new Array(); $blah[0][$i] = new Array(); $blah[0][$i][$j] = new Array(); $blah[0][$i][$j][$k] = new Object(); $blah[0][$i][$j][$k].life = 42;

* instead of new Array() you can type [] (like in Perl ), and instead of new Object() you can type {} (like in perl)

when we use this autovivification in perl.

All the time :)

See Data::Diver and Re: Parsing SOAP::Lite results (with Data::Diver), and Lexical scoping like a fox, Variable Scoping in Perl: the basics, ... autovivification, autovivification, The Bad, the Ugly, and the Good of autovivification, References quick reference, autovivification, autovivification, undefined value as an ARRAY reference sometimes ok, What does Autovivify mean?, Should perl auto vivify here?, TLC: Programming: Perl: Autovivification : What is it and why do I care?, , perlreftut#Making References , references quick reference

Modern Perl

Reference Coercion

Using a dereferencing operation on a non-reference turns that value into a reference (Autovivification, pp. 62) is handy when manipulating nested data structures (Nested Data Structures, pp. 61):


In reply to Re: Autovivification in perl (less clicks of the keyboard to create arbitrarily complex data structures) by Anonymous Monk
in thread Autovivification in perl by rammohan

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.