in reply to Re: explanation of constant syntax?
in thread explanation of constant syntax?

Well, just break it apart:
[ ... ]
creates an arrayref pointing to its contents, in this case FOO (not quoted, so we get the constant value). And then:
@{ ... }
dereferences the enclosed value as if it were an array reference. So essentially, this is the hard way to say:
( ... )
between the two of them, except that it also interpolates within a double-quoted string. That's how I stumbled across this in the first place: how to evaluate a value inside a double-quoted string. I wrote about it in a CLP posting early in the Perl5 days, and the meme stuck and is still being used in other places.

-- Randal L. Schwartz, Perl hacker
Be sure to read my standard disclaimer if this is a reply.