You are viewing the version of this documentation from Perl 5.30.3. View the latest version
$SUBSCRIPT_SEPARATOR
$SUBSEP
$;

The subscript separator for multidimensional array emulation. If you refer to a hash element as

$foo{$x,$y,$z}

it really means

$foo{join($;, $x, $y, $z)}

But don't put

@foo{$x,$y,$z}      # a slice--note the @

which means

($foo{$x},$foo{$y},$foo{$z})

Default is "\034", the same as SUBSEP in awk. If your keys contain binary data there might not be any safe value for $;.

Consider using "real" multidimensional arrays as described in perllol.

Mnemonic: comma (the syntactic subscript separator) is a semi-semicolon.