Случайное сообщение: В LANG1 обнаружен несинхронизированный пакет - PullRequest
7 голосов
/ 01 мая 2019

Работая над задачей 1 из Perl Weekly Challenge 006 , я получил это сообщение с кодом:

Out-of-sync package detected in LANG1 at env perl6
my $string= @*ARGS ?
  (value in braid: GLOBAL, value in $*PACKAGE: GLOBAL)
1-3,5-8,11,13

Оно показало себя только ONCE через нескольковызовы идентичного кода и идентичного ввода.

Точный вызов следующего кода: ./ch-1.p6 1,2,3 ,5,6,7,8,11,13

#!/usr/bin/env perl6
my $string= @*ARGS ?? @*ARGS.join(",")!! prompt "Enter numbers: ";
my $a=$string.split(",",:skip-empty)>>.trim.grep({!/^$/})>>.Int.Bag;
my @r1=$a.keys.sort;
my @diff=@r1.rotate >>-<< @r1;
my @p=(0,|map {|($^k,$k+1) if abs($^v) > 1}, @diff.kv);

@p.pop;
say join ",", map {@r1[$^a]==@r1[$^b]??@r1[$^a]!!"@r1[$^a]-@r1[$^b]"}, @p;

Что означает сообщение и почему оно отображается случайным образом?

Обновление

Это только что повторилось в другой программе:

Out-of-sync package detected in LANG1 at env perl6                 
my $count =0;                                                      
my $nu
  (value in braid: GLOBAL, value in $*PACKAGE: GLOBAL)

Нужно ли переустанавливать?

...