[Moscow.pm] Неиспользуемые переменные

Konovalov, Vadim Vadim.Konovalov на emc.com
Пт Дек 4 00:41:29 PST 2015


Про «ловит» и «не ловит» ничего не понятно...
Но понятно, что про $a и $b надо RTFM дел0дть, апчом и рекомендуют читатели/писатели

From: Moscow-pm [mailto:moscow-pm-bounces+vadim.konovalov=emc.com at pm.org] On Behalf Of Гришаев Анатолий
Sent: Friday, December 04, 2015 11:20 AM
To: Moscow.pm group
Subject: Re: [Moscow.pm] Неиспользуемые переменные

Нет он умнее и похоже умеет отличать локальные и глобальные переменные
см тут
==========================
    my $d = { a => 1, b => 1 };
    my $c;
    my $a;
    my $b = "Hello \n";
    print $b;
==========================
ловит $a, $c, но по прежнему не ловит $d
а тут
========================
    my $d;
    $d = { a => 1, b => 1 };
========================
тоже не ловит.

4 декабря 2015 г., 11:07 пользователь Victor Efimov <victor at vsespb.ru<mailto:victor at vsespb.ru>> написал:
потому что $a и $b - специальные имена. см. perlvar:


$a
$b

Special package variables when using sort(), see sort. Because of this
specialness $a and $b don't need to be declared (using use vars , or
our()) even when using the strict 'vars' pragma. Don't lexicalize them
with my $a or my $b if you want to be able to use them in the sort()
comparison block or function.




4 декабря 2015 г., 11:04 пользователь Гришаев Анатолий
<agrishaev at gmail.com<mailto:agrishaev at gmail.com>> написал:
> Хм, ловит переменную $с в коде, а $a не ловит
> ============================
>     my $a = { a => 1, b => 1 };
>     my $c;
>     my $b = "Hello \n";
>     print $b;
> ============================
>
>
>
>
>
> 3 декабря 2015 г., 23:13 пользователь Aliaksandr Zahatski
> <zahatski at gmail.com<mailto:zahatski at gmail.com>> написал:
>
>> Приветствую!
>>
>> perlcritic -3 test.pl<http://test.pl>
>>
>> see like this:
>>
>> "$unused" is declared but not used at line 15, column 17.  Unused
>> variables clutter code and make it harder to read.  (Severity: 3)
>>
>>
>>
>> 3 декабря 2015 г., 20:49 пользователь Гришаев Анатолий
>> <agrishaev at gmail.com<mailto:agrishaev at gmail.com>> написал:
>> > А что-нибудь от perl -critics  есть? Он использует в качестве данных
>> > исходный код, что правильнее чем Test::Vars.
>> >
>> > 3 декабря 2015 г., 19:46 пользователь Гришаев Анатолий
>> > <agrishaev at gmail.com<mailto:agrishaev at gmail.com>>
>> > написал:
>> >
>> >> Нужно близко к анализу исходномого кода. А вешать на объекты всякую
>> >> магию
>> >> не хочется -- вешать ее надо на все, а это переписывание всего.
>> >> Более близко Test::Vars, но он использует В, и это лучше чем ничего.
>> >>
>> >>
>> >> 3 декабря 2015 г., 18:37 пользователь Natalya Savenkova
>> >> <name2rnd at gmail.com<mailto:name2rnd at gmail.com>> написал:
>> >>
>> >>> http://search.cpan.org/~jjore/Devel-Spy-0.07/lib/Devel/Spy.pm вот это
>> >>> тоже ничего был.
>> >>> Предположу, что многое зависит от вашего конкретного случая.
>> >>>
>> >>> Sent from my iPhone
>> >>>
>> >>> On 03 Dec 2015, at 18:19, Гришаев Анатолий <agrishaev at gmail.com<mailto:agrishaev at gmail.com>>
>> >>> wrote:
>> >>>
>> >>> Возможно проанализировать код автоматически на наличие переменных
>> >>> которые объявлены или даже что-то присвоено, но значение
>> >>> не используется или наоборот используется, но не было присвоено.
>> >>>
>> >>> А аналогично для ключей хэшей/массивов.
>> >>> Тут нужно  какое-то приближение, т.к. абсолютной точности не добиться.
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Moscow.pm mailing list
>> >>> moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org
>> >>>
>> >>>
>> >>> --
>> >>> Moscow.pm mailing list
>> >>> moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org
>> >>>
>> >>
>> >
>> >
>> > --
>> > Moscow.pm mailing list
>> > moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org
>> >
>> --
>> Moscow.pm mailing list
>> moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org
>
>
>
> --
> Moscow.pm mailing list
> moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org
>
--
Moscow.pm mailing list
moscow-pm at pm.org<mailto:moscow-pm at pm.org> | http://moscow.pm.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20151204/472c892e/attachment-0001.html>


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