#!/usr/bin/perl -w use strict; my @one = qw( one two three ); my $two = sub { print "we were passed @_\n" }; # here's the problem line: $two->( map { anda => $_ } @one ); # But this would work fine: #$two->( map { 1 && anda => $_ } @one );