38 lines
679 B
Perl
Raw Normal View History

#!/usr/bin/perl
use strict;
use warnings;
use Data::MessagePack;
use Storable;
use Text::SimpleTable;
my @entries = (
2009-07-30 13:24:38 +09:00
'1',
'3.14',
'{}',
'[]',
"[('a')x10]",
"{('a')x10}",
"+{1,+{1,+{}}}",
"+[+[+[]]]",
);
2009-07-30 13:24:38 +09:00
my $table = Text::SimpleTable->new([15, 'src'], [9, 'storable'], [7, 'msgpack']);
for my $src (@entries) {
my $e = eval $src;
die $@ if $@;
$table->row(
2009-07-30 13:24:38 +09:00
$src,
length(Storable::nfreeze(ref $e ? $e : \$e)),
length(Data::MessagePack->pack($e)),
);
}
2009-07-30 13:29:24 +09:00
print "perl: $]\n";
print "Storable: $Storable::VERSION\n";
print "Data::MessagePack: $Data::MessagePack::VERSION\n";
print "\n";
print $table->draw;
2009-07-30 13:29:24 +09:00