[Moscow.pm] Где в модуле писать use utf8

Oleg Alistratov ali на ali.org.ua
Чт Июн 13 07:13:26 PDT 2013


13.06.2013, 15:58, "Олег Алексеенков" <proler на gmail.com>:
> Oleg Alistratov <ali на ali.org.ua> писал(а) в своём письме Thu, 13 Jun 2013
> 16:52:33 +0400:
>
>>  13.06.2013, 15:23, "Олег Алексеенков" <proler на gmail.com>:
>>>  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 mailing list
>>>  moscow-pm на pm.org | http://moscow.pm.org
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

-- 
Oleg Alistratov


Подробная информация о списке рассылки Moscow-pm