had a lot of fun just now going through 'Higher-order Perl' by Mark Jason Dominus. Damian Conway, co-designer of Perl6 wrote his 'Praise for Higher-Order Perl...':
"It raids the deepest vaults and highest towers of Computer Science, and transforms the many arcane treasures it finds - recursion, iterators, filters, memoization, partitioning, numerical methods, higher-order functions, currying, cutsorting, grammar-based parsing, lazy evaluation, and constraint programming - into powerful and practical tools for real-world programming tasks, file system interactions, HTML processing, database access, web spidering, typesetting, mail processing, home finance, text outlining, and diagram generation.
Along the way it also scatters smaller ( but equally invaluable ) gems, like the elegant explanation of the difference between "scope" and "duration" in Chapter 3, or the careful exploration of how best to return error flags in Chapter 4.
this and that & that could be useful to me as well. thanks