Isso depende...<br><br>se nos seus módulos vc chama outros módulos através de "use", ele vai ser carregado logo no inicio do carregamento do programa, como se estivesse dentro do bloco BEGIN... agora, se vc usar um "require" os modulos serão carregados sob demanda...
<br><br>Fiz um pequeno teste cara comprovar isso:<br><br>fernando@ubuntu:~$ for i in <a href="http://teste.pm">teste.pm</a> <a href="http://teste2.pm">teste2.pm</a> <a href="http://teste3.pm">teste3.pm</a> <a href="http://teste4.pm">
teste4.pm</a>; do echo "#$i"; cat $i; echo; done<br>#teste.pm<br>package teste;<br>print "teste$/";<br>use teste2;<br><br>#teste2.pm<br>package teste2;<br>print "teste2$/";<br>use teste3;<br>
<br>#teste3.pm<br>package teste3;<br>print "teste3$/";<br>use teste4;<br><br>#teste4.pm<br>package teste4;<br>print "teste4$/";<br><br>fernando@ubuntu:~$ perl -Mteste -e ''<br>teste4<br>teste3<br>
teste2<br>teste<br>fernando@ubuntu:~$ perl -i -pe 's/use/require/g;' teste*.pmfernando@ubuntu:~$ for i in <a href="http://teste.pm">teste.pm</a> <a href="http://teste2.pm">teste2.pm</a> <a href="http://teste3.pm">
teste3.pm</a> <a href="http://teste4.pm">teste4.pm</a>; do echo "#$i"; cat $i; echo; done<br>#teste.pm<br>package teste;<br>print "teste$/";<br>require teste2;<br><br>#teste2.pm<br>package teste2;<br>print "teste2$/";
<br>require teste3;<br><br>#teste3.pm<br>package teste3;<br>print "teste3$/";<br>require teste4;<br><br>#teste4.pm<br>package teste4;<br>print "teste4$/";<br><br>fernando@ubuntu:~$ perl -Mteste -e ''
<br>teste<br>teste2<br>teste3<br>teste4<br>fernando@ubuntu:~$ <br><br>isso prova q qdo se usa o "use", ele carrega o módulo mesmo antes do print... por isso a ordem é "invertida" agora, qdo uso o require, ele faz "na" ordem, primeiro o print e depois o carregamento do modulo...
<br><br>espero q tenha podido sanar algumas dúvidas...<br><br><div><span class="gmail_quote">Em 18/11/07, <b class="gmail_sendername">Blabos de Blebe</b> <<a href="mailto:blabos@gmail.com">blabos@gmail.com</a>> escreveu:
</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Na mosca, Fernando.<br>Era exatamente nisso que eu queria chegar. Perdoem-me pela falta de clareza.
<br><br>Num projeto gigante, mas bem feito em perl, separado em módulos, etc<br>cada módulo seria compilado de acordo com a demanda, mesmo depois de subir<br>o script principal, ou seria compilado tudo de uma vez, pra depois
<br>subir o sistema?<br><br><br>Obrigado<br><br><br>On Nov 17, 2007 11:29 AM, Fernando Oliveira <<a href="mailto:fernandocorrea@gmail.com">fernandocorrea@gmail.com</a>> wrote:<br>> Eu acho q a pergunta dele foi a seguinte:
<br>><br>> se existem programas q levam dias p/ compilar, um equivalente a um desses<br>> programas em uma linguagem q compila o código em tempo real, levaria dias p/<br>> rodar? e teria q se esperar dias toda vez q se quisesse rodar esse programa?
<br>><br>> foi isso q vc quis perguntar locão (wesley)?<br>><br>> Em 17/11/07, Frederico Recsky <<a href="mailto:frederico@gmail.com">frederico@gmail.com</a>> escreveu:<br>><br>> > Olá<br>> >
<br>> > On Nov 15, 2007 3:32 PM, Blabos de Blebe < <a href="mailto:blabos@gmail.com">blabos@gmail.com</a>> wrote:<br>> > > Boa tarde a todos,<br>> > ><br>> > > Ultimamente andam me rodeando assuntos como interoperabilidade,
<br>> > > máquina virtual, compilação, etc.<br>> > ><br>> > > Cenário:<br>> > ><br>> > > Tem uma pessoal aí que diz que pra ser portável tem que ter máquina<br>> > > virtual, "porque vc compila pra um e
<br>> > > roda em todos". Outros dizem que para ser portável, basta ser<br>> > > compilável em qualquer plataforma. Os<br>> > > adeptos das máquinas virtuais respondem que grandes sistemas demoram
<br>> > > muito pra compilar, gerando<br>> > > custos extras, etc.<br>> ><br>> > "Maquina virtual, compila em um e roda em todas" é um puta engano. No<br>> > caso do java você roda em todos que a sun quer com ressalvas em
<br>> > algumas. Alias, não existe almoço gratis.<br>> ><br>> > > A pergunta é: Dado um sistema que demore dias pra compilar numa<br>> > > linguagem qualquer. Dado que<br>> > > esse sistema tenha sido re-escrito em "Elegante Perl". Como Perl se
<br>> > > comporta ao levantar um<br>> > > sistema gigante? Ou seja, quais as dificuldades que Perl poderia<br>> > > enfrentar nesse cenário ou em<br>> > > algum semelhante?<br>> >
<br>> > Demorar dias para compilar não quer dizer nada. Quando voce muda<br>> > somente um pedaço do codigo fonte, voce não compila tudo novamente,<br>> > pois já inventaram o linker e etc.. Normalmente na entrega final se
<br>> > faz um grande build. Porém existem n formas de se distribuir grandes<br>> > programas compilados e suas atualizações sem recompilar tudo. Patches<br>> > de binarios por exemplo.<br>> ><br>> > Olha, dos sistemas de dias para compilar, eu vi servidores e sistemas
<br>> > operacionais e suites office/graficas. O corel draw deve levar dias<br>> > para compilar por exemplo. Porém normalmente você trabalha com pedaços<br>> > de um sistema. Você não vai fazer um oracle nem compilar seu proprio
<br>> > oracle para entregar para o cliente, você faz um aplicativo<br>> > (relativamente pequeno) que usa o oracle existente e entrega tudo.<br>> ><br>> > ><br>> > > Eu tenho lá minhas especulações sobre o que aconteceria, mas já que
<br>> > > não tenho como testar,<br>> > > gostaria das opiniões dos grandes mestres.<br>> ><br>> > Just for fun eu gerei um script perl de somente 20 megas, e ele ta<br>> > "abrindo" no meu micro faz uns 40 minutos:
<br>> ><br>> > ps aux |grep gigante.pl<br>> > ibm 8840 92.2 7.2 153616 150460 pts/1 R+ 22:21 42:58 perl<br>> gigante.pl<br>> ><br>> > Obviamente um script monolitico de 20mb não é "Elegante Perl" :) ;)
<br>> ><br>> > --<br>> > ____________________________<br>> > Frederico Recsky<br>> > Linux User: #253572<br>> > <a href="http://www.fred.eti.br">http://www.fred.eti.br</a><br>> >
<a href="http://www.perl.org.br">http://www.perl.org.br</a><br>> > _______________________________________________<br>> > SaoPaulo-pm mailing list<br>> > <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org
</a><br>> > <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>> ><br>><br>><br>><br>> --<br>> []'s Fernando<br>> _______________________________________________
<br>> Rio-pm mailing list<br>> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>><br>_______________________________________________
<br>SaoPaulo-pm mailing list<br><a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div>
<br><br clear="all"><br>-- <br>[]'s Fernando