В Perl 6 есть встроенная функция синтаксического анализа командной строки с помощью MAIN
. Однако я столкнулся с проблемой, которая кажется тривиальной, но я не могу понять ее.
Простой MAIN
:
sub MAIN(Int :n(:$num)) {
say "You passed: " ~ $num;
}
Затем я могу вызвать свой скрипт как:
$ ./test.p6 -n=1
or:
$ ./test.p6 --num=1
Но нельзя с:
$ ./test.p6 -n 1 # or even -n1
or:
$ ./test.p6 --num 1
Я безуспешно просмотрел дизайн-документ для MAIN. Как я могу заставить это работать?