#! /usr/bin/perl -l
use strict;
use warnings;
use List::MoreUtils qw(natatime);
sub unzip(&$@)
{
my $c = shift;
my $n = shift;
my $it = natatime $n, @_;
my @rc;
while (my @vals = $it->())
{
push @rc, $c->(@vals)
}
@rc;
}
use Data::Dumper;
my %h = qw(k1 v1 k2 v2);
print Dumper [ unzip {[$_[0],$_[1]]} 2, @{[%h]} ];
####
#! /usr/bin/perl -l
use strict;
use warnings;
use List::MoreUtils qw(natatime);
sub unzip(&$@)
{
my $c = shift;
my $n = shift;
my $it = natatime $n, @_;
my @rc;
while (my @vals = $it->())
{
local $_ = \@vals;
push @rc, $c->()
}
@rc;
}
use Data::Dumper;
my %h = qw(k1 v1 k2 v2);
print Dumper [ unzip {[$_->[0],$_->[1]]} 2, @{[%h]} ];
####
#! /usr/bin/perl -l
use strict;
use warnings;
use List::MoreUtils qw(natatime);
sub unzip
{
my $c = shift;
my $n = shift;
my $it = natatime $n, @_;
my @rc;
while (my @vals = $it->())
{
local $_ = \@vals;
push @rc, $c->()
}
@rc;
}
use Data::Dumper;
my %h = qw(k1 v1 k2 v2);
print Dumper [ unzip sub {[$_->[0],$_->[1]]}, 2, %h ];