Можете ли вы написать сценарии Perl 6, используя кодировку, отличную от utf8? - PullRequest
0 голосов
/ 05 октября 2018

Perl 5 имеет модуль encoding pragma или Filter::Encoding, однако я не нашел ничего подобного в Perl 6. Я предполагаю, что в конечном итоге исходные фильтры будут созданы, но пока можете ли вы использовать другие кодировки в скриптах Perl 6?

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

Вы не можете написать свой скрипт Perl 6 ни для чего, кроме utf8.Я не думаю, что когда-либо будет какая-либо другая кодировка, в которую вам будет позволено писать свой скрипт, поскольку utf8 - это в основном универсальный стандарт.Такие преимущества, как отсутствие порядка байтов и обратная совместимость с ASCII, являются некоторыми причинами, по которым он стал стандартом, а не такими вещами, как utf16 или utf32.

Возможно, было время, когда такая вещь могла быть полезной, но сегодняЯ не вижу, что это так.Все распространенные текстовые редакторы, которые я знаю по умолчанию - utf8, а наличие файлов в разных форматах затрудняет совместное использование ваших программ на Perl 6 с другими.Есть много причин, чтобы захотеть использовать другие внешние кодировки для Perl 6 (запись в файлы, чтение файлов и т. Д.), Но я не считаю добавление фильтров разумным ходом.

0 голосов
/ 05 октября 2018

Rakudo в настоящее время поддерживает опцию --encoding=, поэтому теоретически вы можете написать скрипт в другой кодировке символов и вызвать его с помощью perl6 --encoding=utf16 yourscript.p6.Но в моих экспериментах мне не удалось заставить его работать с чем-либо, кроме utf8, и даже если бы это сработало, указание --encoding в командной строке было бы для меня большим ударом.

Таким образом, оперативный ответ: в настоящее время нет.

(И я не думаю, что кто-то еще просил об этом ...)

...