The problem is that your
... ($my_xpath)[0] ... is being interpreted as
... ($my_xpath)->[0] .... As in, the thing on the left is expected to be an arrayref, which it isn't.
You can use a slice to get the proper effect:
my $bar=($twig->get_xpath($my_xpath))[0]->text;
That'll provide list context to the inner expression, and then extract just the 0'th element from that.
-- Randal L. Schwartz, Perl hacker
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.