<br><div class="gmail_quote">Em 25 de março de 2010 12:14, Solli Honorio <span dir="ltr"><<a href="mailto:shonorio@gmail.com">shonorio@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Desculpa, fiz confusão com tipo de contexto e com tipo de variável ...<br><br>então o quinto contexto é ........ <br><br>... bem que eu poderia responder e ter a minha cerveja, já que deste fez estou próximo do Luis :D ....<br>
<br></blockquote><div><br>Quer saber de um coisa, não tem restrições então vou explicar ...<br><br>temos também o contexto de interpolação, que é aquela mágica que faz o perl sabe que aquilo dentro de uma sentença é uma variável e não um literal, por exemplo : <br>
<br><div style="margin-left: 40px;">my $total = 10;<br>print qq/O total é : $total\n/;<br></div><br>o resultado será: O total é 10<br><br>isto é o mesmo que : <br><div style="margin-left: 40px;">print q/O total é : / . $total . qq/\n/;<br>
<br></div>mas é muito diferente de fazer :<br><div style="margin-left: 40px;">print q/O total é : $total\n/;<br><br></div>está aí o quinto contexto, que no Programming in Perl realmente é o quinto :D ...<br><br>Champs, quero a minha breja no próximo ES de London, ou seria de Amsterdan ? :D !!!<br>
<br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Solli M. Honório<br><br><div class="gmail_quote">Em 25 de março de 2010 11:01, Solli Honorio <span dir="ltr"><<a href="mailto:shonorio@gmail.com" target="_blank">shonorio@gmail.com</a>></span> escreveu:<div>
<div></div><div class="h5"><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Void e Boolean não são tipo de variáveis, pelo menos não no Perl 5. O perldoc perldata vai lhe dar o caminho para os outros tipos ...<br><br>O Void e Boolean que você viu nos links informados são contexto de retorno da scalar, ou seja quando é considerado falso/verdadeiro, ou quando não é aguardado algum retorno.<br>
<br>O link do mastering explica bem estas informações ... <br><br>Solli M. Honório<br><br><div class="gmail_quote">Em 25 de março de 2010 04:15, "Flávio R. Lopes" <span dir="ltr"><<a href="mailto:flavio.lopes@links.inf.br" target="_blank">flavio.lopes@links.inf.br</a>></span> escreveu:<div>
<div></div><div><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">É....acho que sou eu quem vai pagar as brejas! :)<br>
<br>
Pesquisei na Net e vi estes:<br>
- Scalar<br>
- List<br>
- Void<br>
- Boolean<br>
<br>
Fontes:<br>
<a href="http://www.perlmonks.org/?node_id=738558" target="_blank">http://www.perlmonks.org/?node_id=738558</a><br>
<a href="http://www252.pair.com/comdog/mastering_perl/Chapters/contexts.html" target="_blank">http://www252.pair.com/comdog/mastering_perl/Chapters/contexts.html</a><br>
<br>
Qual seria o quinto tipo?<br>
<br>
<br>
Luis Motta Campos escreveu:<div><div></div><div><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Flávio R. Lopes wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Blz Solli e Nelson....acho que deu pra entender!<br>
<br>
É que no livro aparece o seguinte exemplo que me deixou em dúvida:<br>
<br>
@rocks = qw( talc quartz jade obsidian );<br>
print "How many rocks do you have?\n";<br>
print "I have ", @rocks, " rocks!\n"; # WRONG, prints names of rocks<br>
print "I have ", scalar @rocks, " rocks!\n"; # Correct, gives a number<br>
<br>
Então se eu utilizasse a penultima linha, eu estaria retornando um<br>
Contexto de Lista (pois me traria a lista dos nomes das pedras)<br>
Já na última, estou forçando "@rocks" a me retornar um valor escalar, ou<br>
seja, esta linha é um Contexto Escalar! (pois me retorna o número de<br>
elementos que tenho no meu array)<br>
<br>
É isso mesmo?<br>
<br>
</blockquote>
<br>
Quase. Você está confuso, ainda, sobre o que é "contexto". Contexto quer<br>
dizer "o que está em volta, o que dá sentido".<br>
<br>
Contexto de lista é (entre outras coisas) uma chamada de função:<br>
<br>
my_example_function(<br>
qw( tudo aqui dentro tem contexto de lista ), @inclusive, #$isso<br>
);<br>
<br>
( contexto, de, lista, claro );<br>
<br>
[ qw{ tudo dentro de '[' e ']' está em contexto de lista ];<br>
<br>
{ aqui => 'também', é => 'tudo', contexto => 'de lista' };<br>
<br>
Contexto escalar é mais restritivo:<br>
<br>
scalar @lista; # contexto escalar "na marra"<br>
<br>
$escalar = @lista; # contexto escalar "explícito"<br>
<br>
$hash{ CHAVE } = $valor; # qual é o contexto em que "CHAVE" está?<br>
<br>
Lição de casa: existem mais contextos que apenas "lista" e "escalar".<br>
Eles são 5 no total. Encontre-os e leia sobre eles. Pontos extras (e uma<br>
rodada de cerveja paga por mim) se você postar o que encontrar aqui.<br>
<br>
<br>
Putamplexos<br>
<br>
</blockquote>
<br></div></div><div><div></div><div>
_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a></div></div></blockquote></div></div></div><br><br clear="all"><div><div></div><div>
<br>-- <br>"o animal satisfeito dorme". - Guimarães Rosa<br>
</div></div></blockquote></div></div></div><div><div></div><div class="h5"><br><br clear="all"><br>-- <br>"o animal satisfeito dorme". - Guimarães Rosa<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>"o animal satisfeito dorme". - Guimarães Rosa<br>