my $compress = sub ($x) { state $previous; $x ne $previous ?? $previous = $x !! return; } #### compress :: Eq a => [a] -> [a] compress = map head . group #### my $compress = sub ($x) { state $previous; return $x ne $previous ?? $previous = $x !! (); }