How do I call sort with an anonymous subroutine stored in a hash ??
From: Casey (mail_at_nowhere.com)
Date: 01/30/04
- Next message: Perl: "Perl"
- Previous message: PerlE: "Reg Exp Help"
- Next in thread: nobull_at_mail.com: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Reply: nobull_at_mail.com: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Reply: Anthony: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Fri, 30 Jan 2004 07:28:21 GMT
Hi, I haven't being using perl for too long. Can someone explain the
correct way to get the sort function to recognize an anonymous function
declared as a hash value? Look at my sample code for clarification:
#!/usr/bin/perl
@my_array = qw( g a z f u q m i e b );
$hash{my_sort_sub} = sub { $a cmp $b };
$hash{test_routine} = sub { print "test_routine works\n" };
&{$hash{test_routine}};
print @my_array;
print "\n";
print( sort &{$hash{my_sort_sub}} @my_array );
print "\n";
The code fails to compile with error:
Array found where operator expected at ./test.pl line 9, near "} "
(Missing operator before ?)
syntax error at ./test.pl line 9, near "} @my_array "
Execution of ./test.pl aborted due to compilation errors.
Help! I don't see what's wrong with this.
- Next message: Perl: "Perl"
- Previous message: PerlE: "Reg Exp Help"
- Next in thread: nobull_at_mail.com: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Reply: nobull_at_mail.com: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Reply: Anthony: "Re: How do I call sort with an anonymous subroutine stored in a hash ??"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]