[Moscow.pm] Где в модуле писать use utf8
Олег Алексеенков
proler на gmail.com
Чт Июн 13 05:22:35 PDT 2013
Oleg Alistratov <ali на ali.org.ua> писал(а) в своём письме Thu, 13 Jun 2013
14:52:23 +0400:
Подход противоположный началу тредика:
use common::sense;
use warnings "NONFATAL" => "all";
no warnings qw(uninitialized);
"NONFATAL" => "all" нужен например для не падания на
hex "\x01"
- интересное место, warnings отключает die
> Есть еще такой очень неоднозначный модуль common::sense :)
>
>
> 13.06.2013, 13:14, "Maxim Vuets" <maxim.vuets на gmail.com>:
>> 2013/6/13 Ruslan Zakirov <ruz на bestpractical.com>:
>>
>>> 2013/6/13 Maxim Vuets <maxim.vuets на gmail.com>
>>>> 2013/6/13 Dmitry L. <dim0xff на gmail.com>:
>>>>> Привет!
>>>>>
>>>>> Возник вопрос, а где правильно (не с точки зрения синтаксиса, а
>>>>> вообще)
>>>>> и
>>>>> нагляднее писать use utf8 в файле с модулем?
>>>>> 1. до package My::Module;
>>>>> 2. после package My::Module;
>>>> Прагма utf8 имеет лексическую область видимости. Объявите до ---
>>>> будет
>>>> на файл. После --- на пакет.
>>> По этому все лексические прагмы нуно писать до пакета, в том числе
>>> strict,
>>> warnings... Один файл - один пакет - это хорошо, но иногда надо два и
>>> более
>>> и вот тогда может быть неприятный сюрприз.
>>
>> Говоря в общем, да, я согласен (-: Мой типичный boilerplate такой:
>>
>> use strict;
>> use warnings;
>> use autodie qw<:all>;
>> use utf8;
>> use open qw<:utf8 :std>;
>>
>> ##############################################################################
>> package My::Package;
>>
>> use Something;
>> ...
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
Подробная информация о списке рассылки Moscow-pm