use Language::Haskell; print Language::Haskell->new->eval('foldr (+) 0 [2,2]'); #### use Language::Functional qw(foldr); print foldr { $_[0] + $_[1] } 0, [2,2];