use v5.12;
use warnings;
use Data::Dumper;
BEGIN { $ENV{LIST_MOREUTILS_PP} = 1 }; # enforce PP version, comment for XS
use List::MoreUtils qw/slide/;
my @x= split',', q(a,a,a,a,b,c,c,a,a,d,e,e,e,e);
print Dumper slide { $a ne $b ? $b : () } "", @x;
####
$VAR1 = 'a';
$VAR2 = 'b';
$VAR3 = 'c';
$VAR4 = 'a';
$VAR5 = 'd';
$VAR6 = 'e';
##
##
$VAR1 = 'a';
$VAR2 = undef;
$VAR3 = undef;
$VAR4 = undef;
$VAR5 = 'b';
$VAR6 = 'c';
$VAR7 = undef;
$VAR8 = 'a';
$VAR9 = undef;
$VAR10 = 'd';
$VAR11 = 'e';
$VAR12 = undef;
$VAR13 = undef;
$VAR14 = undef;