[Cascavel-pm] sub-rotina na frente

Blabos de Blebe blabos em gmail.com
Sexta Junho 26 21:43:54 PDT 2009


A expressão 1; já é "deprecated".

Use a expressão 42;

2009/6/26 Adriano Ferreira <a.r.ferreira em gmail.com>:
>
>
> 2009/6/26 Fernando <fernandolouis em terra.com.br>
>>
>> "did not return a true value"
>
> Ah, agora entendi sua dúvida. O seu problema é que ao usar "require" é
> necessário que o código carregado retorne um valor verdadeiro. E só a
> declaração de sub-rotinas não lhe dará isto.
> Por isto, um arquivo como:
> # foo.pl
> sub add2 { shift() + 2}
> vai emitir este erro se carregado com "require 'foo.pl'"
> Mas qualquer um destes dois, funciona
> # foo2.pl
> sub add2 { shift() + 2}
> 1;
> # foo3.pl
> 1;
> sub add2 { shift() + 2}
> Você pode se perguntar porque, e a resposta é que a construção "sub
> nome_da_sub { ... }" é executada em tempo de compilação e não produz um
> valor de retorno útil para os propósitos do "require" (isto vale para o
> "use" também que na verdade é definido em termos de "require"). Por isso,
> sempre que se constrói um arquivo para ser carregado por require/use (por
> exemplo, como um módulo - o que é mais usual em Perl moderno), você deve
> garantir que existe uma última expressão avaliada durante a carga do arquivo
> que retornará um valor verdadeiro. A forma mais fácil de fazer isso, por
> acaso, é colocar
> 1;
> no final do arquivo.
> Saudações,
> Adriano
>
>>
>> e se eu botar logo acima da rotina uma instrução qualquer do tipo $teste =
>> ""; aí não dá erro e funciona.
>>
>> []s
>> Fernando
>>
>> ----- Original Message ----- From: "Giuliani Deon Sanches"
>> <giulianisanches em gmail.com>
>> To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
>> Sent: Thursday, June 25, 2009 5:48 PM
>> Subject: Re: [Cascavel-pm] sub-rotina na frente
>>
>>
>> 2009/6/25 Fernando <fernandolouis em terra.com.br>:
>>>
>>> Pessoal, pesquisei e não encontrei...
>>>
>>> Não é correto começar um programa-perl com uma subrotina?
>>>
>>> []s,
>>> Fernando
>>> _______________________________________________
>>> Cascavel-pm mailing list
>>> Cascavel-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>>>
>>
>> A principio e teoricamente não. Ta dando erro pra você ? Qual a saida ?
>>
>> []'s
>>
>> --
>> twitter.com/giulianisanches
>> giulianisanches.blogspot.com
>> _______________________________________________
>> Cascavel-pm mailing list
>> Cascavel-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>>
>> _______________________________________________
>> Cascavel-pm mailing list
>> Cascavel-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>


Mais detalhes sobre a lista de discussão Cascavel-pm