Talk:Autovivification

Latest comment: 10 years ago by 76.91.197.163 in topic 'autovivificious' -- etymology?


How does one pronounce edit

How does one pronounce this word? Nalpdii 15:09, 13 October 2006 (UTC)Reply

This page is referenced the perl article edit

This page is referenced by the perl article via see also reference. It's probably thus misidentified as orphaned, though the reference is rather indirect. --Shoka 14:38, 19 September 2007 (UTC)Reply

Clear as mud edit

Needs an explanation that someone without any Perl knowledge can understand, never mind the Perl debugger. m.e. (talk) 08:07, 31 May 2008 (UTC)Reply

Is this unique to Perl? edit

The article says: "Autovivification is a unique feature of the Perl programming language (...) This is in contrast to most other high level languages (...) This includes (...) PHP". However, using a variable as an (associative) array in PHP, automatically creates the array as well. An example:

$foo['first'] = 'bar';
$foo[][]      = 'baz';
print_r($foo);

...will print the following (without warnings):

Array
(
    [first] => bar
    [0] => Array
        (
            [0] => baz
        )

)

Isn't this autovivification as well, or am I missing some nuance? Datamagi (talk) 22:48, 15 June 2008 (UTC)Reply

The "unique feature" verbage should probably be rephrased "distinguishing feature" or better yet just taken out. You are not likely to hear the term used outside of the perl community, but that does not mean other languages do not have the same or similar feature. dr.ef.tymac (talk) 23:17, 15 June 2008 (UTC)Reply
The difference is: with PHP (and other languages) this only happens when creating variables (using assignment). In Perl, on the other hand, this happens always when a variable is dereferenced:
In PHP, this prints 0:
$foo[0] = "";
if ($foo[1][2]) {} # $foo is not changed
print (defined($foo[1])? 1 : 0);
In Perl, this prints 1:
$foo[0] = "";
if ($foo[1][2]) {} # $foo[1] is dereferenced, and springs into existence
print defined($foo[1]);
If Perl would not have autovivification, it would not create $foo[1] and print 0 like PHP and other languages do. MrBlueSky (talk) 20:08, 15 July 2008 (UTC)Reply
It maybe very helpful in understanding this topic to have an example like the one above in the article. Mfb52 (talk) 11:45, 2 July 2009 (UTC)Reply

Autovivification in Python: nested defaultdicts with a specific final type edit

'autovivificious' -- etymology? edit

autovivificious seems to have originated in this article? I'm not used to wikipedia being a primary source. 76.91.197.163 (talk) 19:09, 22 November 2013 (UTC)Reply