Complex Datatypes Frequently, data used by a program is significantly more complex than the simple Perl datatypes can represent alone. References are used to build "nested" datatypes: $baz{foo} = \$foo; $baz{bar} = \@bar; $baz{doit} = \&doit; $baz{duck} = \*duck; Our little %baz now has everything inside it.