Автовівіфікація () — автоматичне створення нових масивів та хешів, щоразу коли звертаються до неописаного значення всередині них. З'явилась в мові Perl, і дозволяє програмісту звертатись до структури даних та довільних її піделементів, без явного створення структури даних перед звертанням.
Емуляція в інших мовах програмування
Python Модуль collections містить клас defaultdict який можна використати для реалізації автовівіфіковних словників за допомогою простої рекурсивної функції. from collections import defaultdict
Tree = lambda: defaultdict(Tree)
common_name = Tree() common_name['Mammalia']['Primates']['Homo']['H. sapiens'] = 'human being'
# Відомі цитати за п’єсою, актом та сценою: quotes = Tree() quotes['Hamlet'] = 'This above all: to thine own self be true.'
Див. також Стратегії обчислення Змінна (програмування) Вівіфікація
Зноски
Посилання perl561delta: File and directory handles can be autovivified Autovivification in Perl: An In-Depth Tutorial A Use of the Y Combinator in Ruby — Implements autovivification in Ruby with the Y Combinator. Hash#autonew in the Ruby gem «facets» adds autovivification on hash reads The Ruby gem «xkeys» facilitates nested structure traversal and autovivifies on array or hash writes