From rafamv1 em ig.com.br Fri Jan 4 03:37:49 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Fri, 4 Jan 2008 08:37:49 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= Message-ID: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> Bom dia, pessoal. Estou tentando remover algumas pastas que estão num diretório principal, usando o código abaixo: use CGI qw ( :standard ); use warnings; use strict; my @clear = param ( "limparlog" ); my $dir = "/var/imm/chats/"; opendir (MSN, $dir); my @diretorio = readdir (MSN); close (MSN); my $usuario; foreach $usuario (@clear) { rmdir ("$dir/$usuario"); } O código não dá erro, no entanto, não exclui nenhum diretório.. Há alguma coisa errada nessa "bomba" acima..? -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/84997248/attachment.html From wendelscardua em gmail.com Fri Jan 4 03:41:06 2008 From: wendelscardua em gmail.com (Wendel Scardua) Date: Fri, 4 Jan 2008 09:41:06 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> Message-ID: <726229b50801040341j79d21109i8bb1f492c39002da@mail.gmail.com> Só uma pergunta, porque você preenche @diretorio se não o usa depois ? []s Wendel On Jan 4, 2008 9:37 AM, Rafael Lebrao Martins wrote: > Bom dia, pessoal. Estou tentando remover algumas pastas que estão num > diretório principal, usando o código abaixo: > > > use CGI qw ( :standard ); > use warnings; > use strict; > > my @clear = param ( "limparlog" ); > > my $dir = "/var/imm/chats/"; > opendir (MSN, $dir); > my @diretorio = readdir (MSN); > close (MSN); > > my $usuario; > foreach $usuario (@clear) { > rmdir ("$dir/$usuario"); > } > O código não dá erro, no entanto, não exclui nenhum diretório.. Há alguma > coisa errada nessa "bomba" acima..? > > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/63d62fff/attachment.html From rafamv1 em ig.com.br Fri Jan 4 03:42:47 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Fri, 4 Jan 2008 08:42:47 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: <726229b50801040341j79d21109i8bb1f492c39002da@mail.gmail.com> References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> <726229b50801040341j79d21109i8bb1f492c39002da@mail.gmail.com> Message-ID: <3e759d2b0801040342h6a3db3c0p88585f2aa4b1c1fc@mail.gmail.com> Eu uso, mas em outra parte do código..Ai é só o trecho com problema. Em 04/01/08, Wendel Scardua escreveu: > > Só uma pergunta, porque você preenche @diretorio se não o usa depois ? > > []s > Wendel > > On Jan 4, 2008 9:37 AM, Rafael Lebrao Martins wrote: > > > Bom dia, pessoal. Estou tentando remover algumas pastas que estão num > > diretório principal, usando o código abaixo: > > > > > > use CGI qw ( :standard ); > > use warnings; > > use strict; > > > > my @clear = param ( "limparlog" ); > > > > my $dir = "/var/imm/chats/"; > > opendir (MSN, $dir); > > my @diretorio = readdir (MSN); > > close (MSN); > > > > my $usuario; > > foreach $usuario (@clear) { > > rmdir ("$dir/$usuario"); > > } > > O código não dá erro, no entanto, não exclui nenhum diretório.. Há > > alguma coisa errada nessa "bomba" acima..? > > > > > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/4988c06b/attachment.html From oberdan.luiz em gmail.com Fri Jan 4 03:50:11 2008 From: oberdan.luiz em gmail.com (Oberdan Luiz May) Date: Fri, 4 Jan 2008 08:50:11 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: <3e759d2b0801040342h6a3db3c0p88585f2aa4b1c1fc@mail.gmail.com> References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> <726229b50801040341j79d21109i8bb1f492c39002da@mail.gmail.com> <3e759d2b0801040342h6a3db3c0p88585f2aa4b1c1fc@mail.gmail.com> Message-ID: Oi, Pode até nem ser esse o problema, mas o rmdir só apaga o diretório se estiver vazio. Na prática, é bem melhor usar a função rmtree do File::Path , que apaga tudo. []'s Oberdan On Jan 4, 2008 8:42 AM, Rafael Lebrao Martins wrote: > Eu uso, mas em outra parte do código..Ai é só o trecho com problema. > > > Em 04/01/08, Wendel Scardua escreveu: > > > > > > > > Só uma pergunta, porque você preenche @diretorio se não o usa depois ? > > > > []s > > Wendel > > > > > > > > On Jan 4, 2008 9:37 AM, Rafael Lebrao Martins wrote: > > > > > > > > Bom dia, pessoal. Estou tentando remover algumas pastas que estão num > diretório principal, usando o código abaixo: > > > > > > > > > use CGI qw ( :standard ); > > > use warnings; > > > use strict; > > > > > > my @clear = param ( "limparlog" ); > > > > > > my $dir = "/var/imm/chats/"; > > > opendir (MSN, $dir); > > > my @diretorio = readdir (MSN); > > > close (MSN); > > > > > > my $usuario; > > > foreach $usuario (@clear) { > > > rmdir ("$dir/$usuario"); > > > } > > > O código não dá erro, no entanto, não exclui nenhum diretório.. Há > alguma coisa errada nessa "bomba" acima..? > > > > > > > > > > _______________________________________________ > > 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 > From rafamv1 em ig.com.br Fri Jan 4 03:53:24 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Fri, 4 Jan 2008 08:53:24 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> <726229b50801040341j79d21109i8bb1f492c39002da@mail.gmail.com> <3e759d2b0801040342h6a3db3c0p88585f2aa4b1c1fc@mail.gmail.com> Message-ID: <3e759d2b0801040353u70c6d2caje79f40725704a404@mail.gmail.com> Isso.. Eu acabei de descobrir isso aqui.. Vou verificar o uso do rmtree... Valeu.; Em 04/01/08, Oberdan Luiz May escreveu: > > Oi, > > Pode até nem ser esse o problema, mas o rmdir só apaga o diretório > se estiver vazio. Na prática, é bem melhor usar a função rmtree do > File::Path , que apaga tudo. > > []'s > > Oberdan > > On Jan 4, 2008 8:42 AM, Rafael Lebrao Martins wrote: > > Eu uso, mas em outra parte do código..Ai é só o trecho com problema. > > > > > > Em 04/01/08, Wendel Scardua escreveu: > > > > > > > > > > > > Só uma pergunta, porque você preenche @diretorio se não o usa depois ? > > > > > > []s > > > Wendel > > > > > > > > > > > > On Jan 4, 2008 9:37 AM, Rafael Lebrao Martins > wrote: > > > > > > > > > > > Bom dia, pessoal. Estou tentando remover algumas pastas que estão > num > > diretório principal, usando o código abaixo: > > > > > > > > > > > > use CGI qw ( :standard ); > > > > use warnings; > > > > use strict; > > > > > > > > my @clear = param ( "limparlog" ); > > > > > > > > my $dir = "/var/imm/chats/"; > > > > opendir (MSN, $dir); > > > > my @diretorio = readdir (MSN); > > > > close (MSN); > > > > > > > > my $usuario; > > > > foreach $usuario (@clear) { > > > > rmdir ("$dir/$usuario"); > > > > } > > > > O código não dá erro, no entanto, não exclui nenhum diretório.. Há > > alguma coisa errada nessa "bomba" acima..? > > > > > > > > > > > > > > _______________________________________________ > > > 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 > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/e00683c8/attachment.html From agnaldo em starweb-software.com.br Fri Jan 4 03:58:16 2008 From: agnaldo em starweb-software.com.br (Agnaldo Macedo) Date: Fri, 4 Jan 2008 09:58:16 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> Message-ID: <012601c84ec9$1799af40$6401a8c0@swmobile> Dá uma olhada também nas permissões. Salvo se você tiver outras configurações, se você esta rodando via browser (web) é provavel que esteja atrelado às permissões do usuário da web, nobody, www, etc. para Apache sobre Unix/Linux ou IUSR_máquina para IIS sobre Windows. ----- Original Message ----- From: Rafael Lebrao Martins To: cascavel-pm em pm.org Sent: Friday, January 04, 2008 9:37 AM Subject: [Cascavel-pm] Remover diretórios Bom dia, pessoal. Estou tentando remover algumas pastas que estão num diretório principal, usando o código abaixo: use CGI qw ( :standard ); use warnings; use strict; my @clear = param ( "limparlog" ); my $dir = "/var/imm/chats/"; opendir (MSN, $dir); my @diretorio = readdir (MSN); close (MSN); my $usuario; foreach $usuario (@clear) { rmdir ("$dir/$usuario"); } O código não dá erro, no entanto, não exclui nenhum diretório.. Há alguma coisa errada nessa "bomba" acima..? ------------------------------------------------------------------------------ _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/5f71016b/attachment-0001.html From rafamv1 em ig.com.br Fri Jan 4 04:15:54 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Fri, 4 Jan 2008 09:15:54 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: <012601c84ec9$1799af40$6401a8c0@swmobile> References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> <012601c84ec9$1799af40$6401a8c0@swmobile> Message-ID: <3e759d2b0801040415k35490acar2b6370b260e16b73@mail.gmail.com> O problema é a utilização indevida da função 'rmdir'... Os diretórios estão cheios.. Vou utilizar o 'rmtree'. Valeu. Se houvesse um 'rmdir -r' :) Em 04/01/08, Agnaldo Macedo escreveu: > > > Dá uma olhada também nas permissões. > Salvo se você tiver outras configurações, se você esta rodando via browser > (web) é provavel que esteja atrelado às permissões do usuário da web, > nobody, www, etc. para Apache sobre Unix/Linux ou IUSR_máquina para IIS > sobre Windows. > > > > > ----- Original Message ----- > *From:* Rafael Lebrao Martins > *To:* cascavel-pm em pm.org > *Sent:* Friday, January 04, 2008 9:37 AM > *Subject:* [Cascavel-pm] Remover diretórios > > > Bom dia, pessoal. Estou tentando remover algumas pastas que estão num > diretório principal, usando o código abaixo: > > > use CGI qw ( :standard ); > use warnings; > use strict; > > my @clear = param ( "limparlog" ); > > my $dir = "/var/imm/chats/"; > opendir (MSN, $dir); > my @diretorio = readdir (MSN); > close (MSN); > > my $usuario; > foreach $usuario (@clear) { > rmdir ("$dir/$usuario"); > } > O código não dá erro, no entanto, não exclui nenhum diretório.. Há alguma > coisa errada nessa "bomba" acima..? > > ------------------------------ > > _______________________________________________ > 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 > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/a0f05487/attachment.html From rafamv1 em ig.com.br Fri Jan 4 04:28:46 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Fri, 4 Jan 2008 09:28:46 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Remover_diret=F3rios?= In-Reply-To: <3e759d2b0801040415k35490acar2b6370b260e16b73@mail.gmail.com> References: <3e759d2b0801040337v2383e624v4690a871ae00dc05@mail.gmail.com> <012601c84ec9$1799af40$6401a8c0@swmobile> <3e759d2b0801040415k35490acar2b6370b260e16b73@mail.gmail.com> Message-ID: <3e759d2b0801040428v2ee2beabi4949c407be4efd47@mail.gmail.com> Fiz a substituição do 'rmdir' pelo 'rmtree' e os diretórios foram apagados....!! use CGI qw ( :standard ); use warnings; use strict; use File::Path; my @clear = param ( "limparlog" ); my $dir = "/var/imm/chats/"; opendir (MSN, $dir); my @diretorio = readdir (MSN); close (MSN); my $usuario; foreach $usuario (@clear) { rmtree ("$dir/$usuario"); } Em 04/01/08, Rafael Lebrao Martins escreveu: > > O problema é a utilização indevida da função 'rmdir'... Os diretórios > estão cheios.. > Vou utilizar o 'rmtree'. Valeu. > Se houvesse um 'rmdir -r' :) > > > Em 04/01/08, Agnaldo Macedo escreveu: > > > > > > Dá uma olhada também nas permissões. > > Salvo se você tiver outras configurações, se você esta rodando via > > browser (web) é provavel que esteja atrelado às permissões do usuário da > > web, nobody, www, etc. para Apache sobre Unix/Linux ou IUSR_máquina para IIS > > sobre Windows. > > > > > > > > > > ----- Original Message ----- > > *From:* Rafael Lebrao Martins > > *To:* cascavel-pm em pm.org > > *Sent:* Friday, January 04, 2008 9:37 AM > > *Subject:* [Cascavel-pm] Remover diretórios > > > > > > Bom dia, pessoal. Estou tentando remover algumas pastas que estão num > > diretório principal, usando o código abaixo: > > > > > > use CGI qw ( :standard ); > > use warnings; > > use strict; > > > > my @clear = param ( "limparlog" ); > > > > my $dir = "/var/imm/chats/"; > > opendir (MSN, $dir); > > my @diretorio = readdir (MSN); > > close (MSN); > > > > my $usuario; > > foreach $usuario (@clear) { > > rmdir ("$dir/$usuario"); > > } > > O código não dá erro, no entanto, não exclui nenhum diretório.. Há > > alguma coisa errada nessa "bomba" acima..? > > > > ------------------------------ > > > > _______________________________________________ > > 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 > > > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080104/43630118/attachment.html From ajsavige em yahoo.com.au Sat Jan 5 19:53:01 2008 From: ajsavige em yahoo.com.au (Andrew Savige) Date: Sat, 5 Jan 2008 19:53:01 -0800 (PST) Subject: [Cascavel-pm] =?iso-8859-1?q?=5BGolf=5D_Converter_n=FAmeros_roman?= =?iso-8859-1?q?os_para_decimais?= Message-ID: <477595.18741.qm@web56415.mail.re3.yahoo.com> > Mas se alguém quiser fazer um "golf paralelo" aqui na lista, eu tô > tentando resolver esse aqui: > > http://codegolf.com/roman-to-decimal > > Mas não acho que vou conseguir nada muito abaixo de 105 pontos, sendo > que no site o primeiro lugar tá em 55 :-( > >update: cheguei a 93 > > []s > Wendel > > ps: minha tacada atual é: > $b=.5;$$_=$b*=5-($a^=3)for IVXLCDM=~/./g;$\+=($$_<$x?-1:1)*($x=$$_)for > reverse<>=~/./g;print > $b=.5;$$_=$b*=5-($a^=3)for IVXLCDM=~/./g $$_=$b*=$^F^=7for$b=.1,IVXLCDM=~/./g or: $b=++$I;$$_=$b*=$^F^=7for V,X,L,C,D,M > $\+=($$_<$x?-1:1) $\-=($$_<$x||-1) Cheers, /-\ Make the switch to the world's best email. Get the new Yahoo!7 Mail now. www.yahoo7.com.au/worldsbestemail From giulianisanches em gmail.com Mon Jan 7 03:04:00 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Mon, 7 Jan 2008 09:04:00 -0200 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit Message-ID: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> Bom dia a todos! Alguém tem algum material sobre como trabalhar com o CGI.pm + Template::Toolkit ? Grato pela atenção From luismottacampos em yahoo.co.uk Mon Jan 7 03:56:08 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Mon, 07 Jan 2008 12:56:08 +0100 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> Message-ID: <47821358.3050309@yahoo.co.uk> Giuliani Deon Sanches wrote: > Bom dia a todos! > Alguém tem algum material sobre como trabalhar com o CGI.pm + > Template::Toolkit ? Giuliani, Eu tenho certeza de que você vai gostar mais de trabalhar SEM o CGI.pm... ele é feio, velho, mal implementado e continua na distro do Perl por que a gente tem de suportar software velho também. Dá uma olhada no meu artigo sobre CGI::App e TT em http://sao-paulo.pm.org/papers/champs/cgi-app-paper/index.html Espero que isso ajude. Em caso de dúvidas, basta perguntar. Putamplexos! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From giulianisanches em gmail.com Mon Jan 7 04:28:29 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Mon, 7 Jan 2008 10:28:29 -0200 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <47821358.3050309@yahoo.co.uk> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> <47821358.3050309@yahoo.co.uk> Message-ID: <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> > Eu tenho certeza de que você vai gostar mais de trabalhar SEM o > CGI.pm... ele é feio, velho, mal implementado e continua na distro do > Perl por que a gente tem de suportar software velho também. > > Dá uma olhada no meu artigo sobre CGI::App e TT em > > http://sao-paulo.pm.org/papers/champs/cgi-app-paper/index.html Muito obrigado Luis. Estou procurando um solução simples, porém rápida e robusta para o site de uma empresa. A intenção futura deles é inclusive migrar um sistema win32 para web. Tanto o CGI:App quanto o Cgi.pm me pareceram bons, mas como sua experiente opnião aponto o CGI::App, vamos a ele. :) From edencardim em gmail.com Mon Jan 7 04:48:18 2008 From: edencardim em gmail.com (eden) Date: Mon, 7 Jan 2008 09:48:18 -0300 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> <47821358.3050309@yahoo.co.uk> <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> Message-ID: <3de55ead0801070448x14b356f7gda6eacb0ae99295b@mail.gmail.com> On Jan 7, 2008 9:28 AM, Giuliani Deon Sanches wrote: > Muito obrigado Luis. > Estou procurando um solução simples, porém rápida e robusta para o > site de uma empresa. A intenção futura deles é inclusive migrar um > sistema win32 para web. Tanto o CGI:App quanto o Cgi.pm me pareceram > bons, mas como sua experiente opnião aponto o CGI::App, vamos a ele. > :) Da uma olhada no Catalyst, e se tiver coragem, no Reaction. -- edenc.vox.com From giulianisanches em gmail.com Mon Jan 7 05:44:12 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Mon, 7 Jan 2008 11:44:12 -0200 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <3de55ead0801070448x14b356f7gda6eacb0ae99295b@mail.gmail.com> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> <47821358.3050309@yahoo.co.uk> <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> <3de55ead0801070448x14b356f7gda6eacb0ae99295b@mail.gmail.com> Message-ID: <572750180801070544h6cbcb713g5f000eae6c4c0d3@mail.gmail.com> Eu cheguei a passar o olho no catalyst. Mas ele me pareceu muito grande. Algo como, no meu caso, usar uma bazuca para matar um cavalo (no máximo um elefante) :) O reaction eu nunca havia ouvido falar, vamos ao goolge. Em 07/01/08, eden escreveu: > On Jan 7, 2008 9:28 AM, Giuliani Deon Sanches wrote: > > Muito obrigado Luis. > > Estou procurando um solução simples, porém rápida e robusta para o > > site de uma empresa. A intenção futura deles é inclusive migrar um > > sistema win32 para web. Tanto o CGI:App quanto o Cgi.pm me pareceram > > bons, mas como sua experiente opnião aponto o CGI::App, vamos a ele. > > :) > > Da uma olhada no Catalyst, e se tiver coragem, no Reaction. > > -- > edenc.vox.com > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > From edencardim em gmail.com Mon Jan 7 05:51:15 2008 From: edencardim em gmail.com (eden) Date: Mon, 7 Jan 2008 10:51:15 -0300 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <572750180801070544h6cbcb713g5f000eae6c4c0d3@mail.gmail.com> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> <47821358.3050309@yahoo.co.uk> <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> <3de55ead0801070448x14b356f7gda6eacb0ae99295b@mail.gmail.com> <572750180801070544h6cbcb713g5f000eae6c4c0d3@mail.gmail.com> Message-ID: <3de55ead0801070551m60d2364er42e670d77dc22509@mail.gmail.com> On Jan 7, 2008 10:44 AM, Giuliani Deon Sanches wrote: > Eu cheguei a passar o olho no catalyst. Mas ele me pareceu muito > grande. Algo como, no meu caso, usar uma bazuca para matar um cavalo > (no máximo um elefante) :) É grande porque ele resolve a maioria dos problemas pra você, melhor do que passar um tempão reescrevendo tudo por conta própria. Na minha máquina 'apt-get install libcatalyst-perl' levou 30 segundos. -- edenc.vox.com From giulianisanches em gmail.com Mon Jan 7 09:16:32 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Mon, 7 Jan 2008 15:16:32 -0200 Subject: [Cascavel-pm] Sobre CGI.pm e Template::Toolkit In-Reply-To: <3de55ead0801070551m60d2364er42e670d77dc22509@mail.gmail.com> References: <572750180801070304k472ea9d0r54a139a751397057@mail.gmail.com> <47821358.3050309@yahoo.co.uk> <572750180801070428q5c6fa76o11465bb2c13dab0b@mail.gmail.com> <3de55ead0801070448x14b356f7gda6eacb0ae99295b@mail.gmail.com> <572750180801070544h6cbcb713g5f000eae6c4c0d3@mail.gmail.com> <3de55ead0801070551m60d2364er42e670d77dc22509@mail.gmail.com> Message-ID: <572750180801070916i2b17431elc3c96be503c7c370@mail.gmail.com> Desculpa, não me expressei direito. Quando disse grande, quis dizer em questão de features. Para um projeto pequeno não acho que ele se encaixe bem. 2008/1/7, eden : > On Jan 7, 2008 10:44 AM, Giuliani Deon Sanches > wrote: > > Eu cheguei a passar o olho no catalyst. Mas ele me pareceu muito > > grande. Algo como, no meu caso, usar uma bazuca para matar um cavalo > > (no máximo um elefante) :) > > É grande porque ele resolve a maioria dos problemas pra você, melhor > do que passar um tempão reescrevendo tudo por conta própria. Na minha > máquina 'apt-get install libcatalyst-perl' levou 30 segundos. > > -- > edenc.vox.com > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > From glasswalk3r em yahoo.com.br Mon Jan 7 10:18:51 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Mon, 7 Jan 2008 15:18:51 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?acess=F3rios_de_altera=E7=E3o_mais_s?= =?iso-8859-1?q?ofisticados?= Message-ID: <545775.74624.qm@web30803.mail.mud.yahoo.com> Olá monges, Estou querendo incluir acessórios em algumas classes, mas eu acho que o Class::Accessor não consegue dar conta do recado... Essas classes precisam de métodos para alterar atributos e eles deveriam seguir sempre a mesma regra de validação. Eu gostaria de implementar métodos automáticos que já fizesse essas verificações, mas queria escrever isso uma vez só. Algum "filhote" do Class::Accessor já faz isso? Dei uma procurada no CPAN mas não achei nada. []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From glasswalk3r em yahoo.com.br Mon Jan 7 10:40:02 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Mon, 7 Jan 2008 15:40:02 -0300 (ART) Subject: [Cascavel-pm] Re: uso de __DATA__ com hierarquia de classes e Template Toolkit Message-ID: <928872.78216.qm@web30806.mail.mud.yahoo.com> Luis Motta Campos luismottacampos em yahoo.co.uk Quarta Dezembro 5 01:14:19 PST 2007 wrote: > Onde estah o codigo de leitura do __DATA__ ? Ler do > __DATA__ nao eh > trivial, especialmente quando voce estah tentando ler > de um __DATA__ que > nao eh o seu proprio. É dureza... mas dá para fazer com manipulação da tabela de símbolos. O único inconveniente é que você consegue recuperar os dados na primeira leitura, depois dá erro. > Eu recomendo que voce transcreva teus templates em um > inline string > dentro de um metodo na classe filha. Assim, fica mais > simples de > entender o que voce estah colocando ali. Eu estava usando isso. Mas dar manutenção em código assim é um porre. Sem contar que fazer escape do código também é um inferno. Depois do __DATA__, tudo fica muito mais fácil. Com o TT eu ainda consegui gerar código identado. > Bom, isso se voce quiser continuar com esta solucao > complicada. Parece limpo pra mim. Mas usar a tabela de símbolos é realmente complicado. A sintaxe é ruim, nada intuitiva. Tive que fazer alguns testes antes de chegar no que queria. > Voce ainda me deve: > > 1. Status; Ainda preciso fazer mais testes e colocar um POD. Mas isso aí vai pro CPAN. > 2. Codigo de leitura do __DATA__ que voce estah > usando. O código abaixo é funcional: package File::Validate::Template; use Carp qw(confess); use strict; use warnings; sub new { my $class = shift; my $self; { no strict; $self = { data_handle => *{"$class\::DATA"} }; } bless $self, $class; return $self; } sub get_code { my $self = shift; my $buffer; # turn on slurp mode local $/; my $handle = $self->{data_handle}; $buffer = <$handle>; confess "No data from __DATA__ file handle" unless ( defined($buffer) ); return \$buffer; } 1; []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From edencardim em gmail.com Mon Jan 7 11:59:33 2008 From: edencardim em gmail.com (eden) Date: Mon, 7 Jan 2008 16:59:33 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?acess=F3rios_de_altera=E7=E3o_mais_s?= =?iso-8859-1?q?ofisticados?= In-Reply-To: <545775.74624.qm@web30803.mail.mud.yahoo.com> References: <545775.74624.qm@web30803.mail.mud.yahoo.com> Message-ID: <3de55ead0801071159v653251aegf436ca797bc36cde@mail.gmail.com> On Jan 7, 2008 3:18 PM, Alceu R. de Freitas Jr. wrote: > Olá monges, > > Estou querendo incluir acessórios em algumas classes, > mas eu acho que o Class::Accessor não consegue dar > conta do recado... > > Essas classes precisam de métodos para alterar > atributos e eles deveriam seguir sempre a mesma regra > de validação. Eu gostaria de implementar métodos > automáticos que já fizesse essas verificações, mas > queria escrever isso uma vez só. > > Algum "filhote" do Class::Accessor já faz isso? Dei > uma procurada no CPAN mas não achei nada. http://search.cpan.org/~stevan/Moose-0.33/lib/Moose.pm -- edenc.vox.com From giulianisanches em gmail.com Mon Jan 7 17:23:51 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Mon, 7 Jan 2008 23:23:51 -0200 Subject: [Cascavel-pm] Sobre o perltidy Message-ID: <20080107232351.7594dfa2@dracco.home> Boa noite. Sei que não existe um padrão definitivo para formatação de código perl, somente algumas indicações no Perl Best Pratices e perlstyle. Baixei o perltidy e li o man dele. Testei principalmente o -pbp que segue as indicações do livro citado e também essas, que me agradaram muito aos olhos :D : -nola -pt=2 -ci=4 -sbt=2 -bt=2 -nsfs -ce -otr -sot -lp -vt=2 Gostaria de opniões quanto a isso para que eu consiga deixar a aparência do código o mais genérica e bem organizada possível a ponto de qqer outro programador perl sentar e ler sem se sentir muito desconfortável com a organização. -------------- Próxima Parte ---------- Um anexo não texto foi limpo... Nome : signature.asc Tipo : application/pgp-signature Tam : 189 bytes Descr.: não disponível Url : http://mail.pm.org/pipermail/cascavel-pm/attachments/20080107/fa4113f2/attachment.bin From acid06 em gmail.com Mon Jan 7 19:58:08 2008 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 8 Jan 2008 01:58:08 -0200 Subject: [Cascavel-pm] Sobre o perltidy In-Reply-To: <20080107232351.7594dfa2@dracco.home> References: <20080107232351.7594dfa2@dracco.home> Message-ID: <9a08c9b40801071958m51712457ncb67ab196f23c835@mail.gmail.com> On Jan 7, 2008 11:23 PM, Giuliani Deon Sanches wrote: > Gostaria de opniões quanto a isso para que eu consiga deixar a > aparência do código o mais genérica e bem organizada possível a ponto > de qqer outro programador perl sentar e ler sem se sentir muito > desconfortável com a organização. Pra estética pura e simples, desde que você indente o código e coloque quebras de linhas em lugares que façam sentido, ninguém vai ter muito problema em entender se você abriu a chave do "if" na mesma linha ou na linha seguinte (em Perl, é mais comum abrir na mesma linha). O principal mesmo é seguir o estilo de nomenclatura das coisas normalmente utilizado - acho que a maior parte dessas coisas está no documento perlstyle. Basicamente: * NomeDeModulo::SemUsarUnderscore * $variavel_local * $VARIAVEL_GLOBAL * nome_de_metodo * _metodo_privado Sempre: use strict; use warnings; Evite loops for estilo C. Por exemplo, utilize: for my $i (0..9) ao invés de: for (my $i = 0; $i < 10; $i++) Ao abrir arquivos, utilize variáveis léxicas ao invés de GLOBs e faça uso do open() com 3 parâmetros. Por exemplo, utilize: open my $fh, '>', 'meu_arquivo' or die $!; ao invés de open(FH, '>meu_arquivo') or die $!; (depois de aberto você pode usar $fh como usaria o FH) Saiba quando utilizar as estruturas de controle em uma linha só para aumentar legibilidade e evite os casos em que ela é piorada por esses usos. Por exemplo, utilize: $hash{ $_ } = 1 for qw/foo bar baz/; ao invés de: for (qw/foo bar/baz/) { $hash{ $_ } = 1; } Quem vem de outras linguagens de programação costuma colocar prefixos nos nomes de variáveis. Isso não é um idioma comum em Perl. Você pode ficar tentado a utilizar a protótipos para os parâmetros de suas funções. Não utilize a não ser que esteja querendo fazer algum uso avançado que só é possível com o uso de protótipos (criar nova sintaxe). Caso você esteja programando orientado a objetos, não cheque o tipo dos objetos específicamente - verifique a capacidade dos objetos através do método can(). Caso esteja checando herança ou capacidade, não utilize UNIVERSAL::isa() e UNIVERSAL::can() como funções - sempre chame os métodos. Caso realmente não confie no que chega em você ao ponto de duvidar se o que vem é realmente um objeto, utilize a seguinte sintaxe: use Scalar::Util qw/blessed/; if ( blessed $obj && $obj->can('foo') ) { # faça o que tem que fazer, provavemente chamar o método foo() $obj->foo('bar'); } Claro que minha opinião é que essas verificações são excessivas e desnecessárias mas, caso se sinta tentado a fazê-las, pelo menos faça do jeito correto. Tem muito mais coisa por aí, quem sabe alguém completa. -Nilson Santos F. Jr. From daniel em ruoso.com Tue Jan 8 02:05:27 2008 From: daniel em ruoso.com (Daniel Ruoso) Date: Tue, 08 Jan 2008 10:05:27 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Accessors_-=3E_Acess=F3rios=3F_=28Wa?= =?iso-8859-1?q?s=3A_Re=3A__acess=F3rios_de_altera=E7=E3o_mais_sofi?= =?iso-8859-1?q?sticados=29?= In-Reply-To: <545775.74624.qm@web30803.mail.mud.yahoo.com> References: <545775.74624.qm@web30803.mail.mud.yahoo.com> Message-ID: <1199786727.11383.4.camel@pitombeira> Seg, 2008-01-07 às 15:18 -0300, Alceu R. de Freitas Jr. escreveu: > Olá monges, > Estou querendo incluir acessórios em algumas classes, > mas eu acho que o Class::Accessor não consegue dar > conta do recado... Hmm... li a mensagem só porque não fazia a menor idéia de o que seriam acessórios de alteração, até ver que você se referia a accessors, e foi então que eu vi que eu nunca tinha parado para traduzir Accessors no sentido de OO. Mas eu fico me perguntando, essa tradução está correta? Accessor vem de acesso, não de acessório, é aquilo que dá acesso. Será que usar simplemente "acessores" não seria mais razoável? O google translate traduz accessor como "acessador", mas isso me parece esquisito. daniel From daniel em ruoso.com Tue Jan 8 02:07:49 2008 From: daniel em ruoso.com (Daniel Ruoso) Date: Tue, 08 Jan 2008 10:07:49 +0000 Subject: [Cascavel-pm] uso de __DATA__ com hierarquia de classes e Template Toolkit In-Reply-To: <928872.78216.qm@web30806.mail.mud.yahoo.com> References: <928872.78216.qm@web30806.mail.mud.yahoo.com> Message-ID: <1199786869.11383.8.camel@pitombeira> Seg, 2008-01-07 às 15:40 -0300, Alceu R. de Freitas Jr. escreveu: > Luis Motta Campos luismottacampos em yahoo.co.uk > Quarta Dezembro 5 01:14:19 PST 2007 wrote: > > Onde estah o codigo de leitura do __DATA__ ? Ler do > > __DATA__ nao eh > > trivial, especialmente quando voce estah tentando > ler > > de um __DATA__ que > > nao eh o seu proprio. > É dureza... mas dá para fazer com manipulação da > tabela de símbolos. O único inconveniente é que você > consegue recuperar os dados na primeira leitura, > depois dá erro. Não exatamente. O __DATA__ é um filehandle como qualquer outro, e você pode fazer seek nele. O único problema é que, ao contrário do que se pensa, ele não aponta somente para o trecho depois do __DATA__, mas sim para o arquivo inteiro, então na hora que você fizer seek 0, ele vai para o início do arquivo 8|. Então uma alternativa é você guardar a posição atual do fh antes de usar usando o tell, e depois fazer seek para essa mesma posição. daniel From giulianisanches em gmail.com Tue Jan 8 02:36:51 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Tue, 8 Jan 2008 08:36:51 -0200 Subject: [Cascavel-pm] Sobre o perltidy In-Reply-To: <9a08c9b40801071958m51712457ncb67ab196f23c835@mail.gmail.com> References: <20080107232351.7594dfa2@dracco.home> <9a08c9b40801071958m51712457ncb67ab196f23c835@mail.gmail.com> Message-ID: <572750180801080236n6fbe66ecl9c83a834d45fdf24@mail.gmail.com> Muito obrigado por toda essa informação Nilson. Extremamente útil. (Preciso compra o Perl Best Pratices hehehe). Me permita apenas fazer um apontamento. Onde você afirma: > * NomeDeModulo::SemUsarUnderscore > * $variavel_local > * $VARIAVEL_GLOBAL > * nome_de_metodo > * _metodo_privado Dei uma consultada no perlstyle e encontrei essa nomeclatura para nomes de variáveis: $ALL_CAPS_HERE constants only (beware clashes with perl vars!) $Some_Caps_Here package-wide global/static $no_caps_here function scope my() or local() variables Quanto aos nomes de métodos e pacotes estou cuidando para fazer sempre da forma sugerida. From glasswalk3r em yahoo.com.br Tue Jan 8 04:21:39 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 09:21:39 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?Accessors_-=3E_Acess=F3rios=3F_=28Wa?= =?iso-8859-1?q?s=3A_Re=3A__acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <1199786727.11383.4.camel@pitombeira> Message-ID: <977983.38522.qm@web30806.mail.mud.yahoo.com> --- Daniel Ruoso escreveu: > Hmm... li a mensagem só porque não fazia a menor > idéia de o que seriam > acessórios de alteração, até ver que você se referia > a accessors, e foi > então que eu vi que eu nunca tinha parado para > traduzir Accessors no > sentido de OO. Ih, nem eu fiz isso! Na realidade foi erro meu, isso é um falso cognato. > Mas eu fico me perguntando, essa tradução está > correta? > > Accessor vem de acesso, não de acessório, é aquilo > que dá acesso. > > Será que usar simplemente "acessores" não seria mais > razoável? O google > translate traduz accessor como "acessador", mas isso > me parece > esquisito. Acessórios realmente está errado, mesmo se pensando em OO, sem fazer a tradução literal. Se você achou esquisito a tradução direta do inglês, procure ver como é a tradução de mandarim ou cantonês... tem coisas que simplesmente não fazem sentido direito em outra língua. Melhor mesmo usar método de acesso... []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From glasswalk3r em yahoo.com.br Tue Jan 8 04:24:31 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 09:24:31 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <3de55ead0801071159v653251aegf436ca797bc36cde@mail.gmail.com> Message-ID: <771533.54380.qm@web30803.mail.mud.yahoo.com> --- eden escreveu: > http://search.cpan.org/~stevan/Moose-0.33/lib/Moose.pm OK, alguma outra forma de fazer sem ter que aprender mais um sistema de orientação à objetos? :-) []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From luismottacampos em yahoo.co.uk Tue Jan 8 04:30:33 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Tue, 08 Jan 2008 13:30:33 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <771533.54380.qm@web30803.mail.mud.yahoo.com> References: <771533.54380.qm@web30803.mail.mud.yahoo.com> Message-ID: <47836CE9.7010400@yahoo.co.uk> Alceu R. de Freitas Jr. wrote: > --- eden escreveu: > > http://search.cpan.org/~stevan/Moose-0.33/lib/Moose.pm > > OK, alguma outra forma de fazer sem ter que aprender > mais um sistema de orientação à objetos? :-) O que exatamente você quer fazer que o Class::Accessor não te oferece pronto, Alceu? Eu ainda não entendi o que os teus métodos de acesso tem de especiais. Pode ser distração minha, também... Putamplexos! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From glasswalk3r em yahoo.com.br Tue Jan 8 04:43:32 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 09:43:32 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <47836CE9.7010400@yahoo.co.uk> Message-ID: <884012.59749.qm@web30806.mail.mud.yahoo.com> --- Luis Motta Campos escreveu: > O que exatamente você quer fazer que o > Class::Accessor não te oferece > pronto, Alceu? Talvez ele ofereça... mas eu ainda não descobri como. > Eu ainda não entendi o que os teus métodos de acesso > tem de especiais. > Pode ser distração minha, também... Ou meus emails andam confusos demais... De qualquer forma, vamos para um exemplo que é mais fácil. Quando eu criei módulos para acessar recurso pacotes DTS, eu encapsulei o objeto fornecido via COM através do módulo Win32::OLE. Até então eu só utilizava métodos de leitura (get_) para ler os atributos. Agora resolvi ir mais longe e oferecer métodos para alterar esses atributos. Mas aí tenho um problema de sincronização, eu tenho que alterar ambos os objetos (o da classe DTS e o objeto obtido via COM). O objeto via COM é referenciado por um atributo "oculto" chamado _sibling. Eu só conseguiria alterar um atributo e sincronizar o valor entre os dois objetos se esse atributo _sibling estiver disponível. Se eu fosse escrever isso na mão, eu teria um trabalho chato para fazer. Eu imagino algo assim: sub set_attribute { my $self = shift; my $attrib = shift; my $value = shift; die "não consigo configurar nada sem _sibling" unless (defined($self->{_sibling})); #restante do código viria aqui } []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From edencardim em gmail.com Tue Jan 8 05:45:33 2008 From: edencardim em gmail.com (eden) Date: Tue, 8 Jan 2008 10:45:33 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofi?= =?iso-8859-1?q?sticados=29?= In-Reply-To: <771533.54380.qm@web30803.mail.mud.yahoo.com> References: <3de55ead0801071159v653251aegf436ca797bc36cde@mail.gmail.com> <771533.54380.qm@web30803.mail.mud.yahoo.com> Message-ID: <3de55ead0801080545p7889e330xd08e51143c8142fb@mail.gmail.com> On Jan 8, 2008 9:24 AM, Alceu R. de Freitas Jr. wrote: > > --- eden escreveu: > > > > http://search.cpan.org/~stevan/Moose-0.33/lib/Moose.pm > > OK, alguma outra forma de fazer sem ter que aprender > mais um sistema de orientação à objetos? :-) Aprender mais um sistema de orientação de objetos vai lhe fazer mais bem do que mal. Além disso, quem lida com tecnologia não pode ter medo de aprender. A sintaxe do Moose é inspirada no Perl 6 e é bem simples, o tempo que você passar lendo um pouco de documentação vai ser igual ao tempo que você tá usando postando na lista a procura de uma solução e não vai ser desperdiçado por inteiro. Por sinal, tem *mais um* sistema que pode lhe interessar: http://search.cpan.org/~claco/Class-Accessor-Grouped-0.07000/lib/Class/Accessor/Grouped.pm -- edenc.vox.com From a.r.ferreira em gmail.com Tue Jan 8 08:00:03 2008 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Tue, 8 Jan 2008 14:00:03 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofi?= =?iso-8859-1?q?sticados=29?= In-Reply-To: <884012.59749.qm@web30806.mail.mud.yahoo.com> References: <47836CE9.7010400@yahoo.co.uk> <884012.59749.qm@web30806.mail.mud.yahoo.com> Message-ID: <73ddeb6c0801080800s83ccb42qc9821f7cfd476f1c@mail.gmail.com> On Jan 8, 2008 10:43 AM, Alceu R. de Freitas Jr. wrote: > > --- Luis Motta Campos > escreveu: > > > O que exatamente você quer fazer que o > > Class::Accessor não te oferece > > pronto, Alceu? > > Talvez ele ofereça... mas eu ainda não descobri como. Pelo que eu entendi das suas necessidades, acho que o Class::Accessor pode fazer o que você quer com alguma ajudinha. > > Eu ainda não entendi o que os teus métodos de acesso > > tem de especiais. > > Pode ser distração minha, também... > > Ou meus emails andam confusos demais... De qualquer > forma, vamos para um exemplo que é mais fácil. > > Quando eu criei módulos para acessar recurso pacotes > DTS, eu encapsulei o objeto fornecido via COM através > do módulo Win32::OLE. Até então eu só utilizava > métodos de leitura (get_) para ler os atributos. > > Agora resolvi ir mais longe e oferecer métodos para > alterar esses atributos. Mas aí tenho um problema de > sincronização, eu tenho que alterar ambos os objetos > (o da classe DTS e o objeto obtido via COM). > > O objeto via COM é referenciado por um atributo > "oculto" chamado _sibling. Eu só conseguiria alterar > um atributo e sincronizar o valor entre os dois > objetos se esse atributo _sibling estiver disponível. > Se eu fosse escrever isso na mão, eu teria um trabalho > chato para fazer. Aqui vale lembrar que para fazer o Class::Accessor lhe dar getters e setters separados segundo o PBP (Perl Best Practices), basta usar use base qw( Class::Accessor ); __PACKAGE__->follow_best_practices(); __PACKAGE__->mk_accessors( qw( sibling ... ) ); Mas isto é digressão e você provavelmente leu isto na documentação (http://search.cpan.org/perldoc?Class::Accessor). > Eu imagino algo assim: > > sub set_attribute { > > my $self = shift; > my $attrib = shift; > my $value = shift; > > die "não consigo configurar nada sem _sibling" > unless (defined($self->{_sibling})); > > #restante do código viria aqui > > } Acho que uma das formas possíveis de fazer isto é prestar atenção nesta recomendação: "Modifying the behavior of the accessor Rather than actually modifying the accessor itself, it is much more sensible to simply override the two key methods which the accessor calls. Namely set() and get(). " Assim acho que, sobrepondo o método set(), com um código similar a # mapa dos atributos dependentes para aqueles de que eles dependem my %DEPENDENT_FIELDS = ( attribute => [ qw(sibling) ], #sibling não tem dependencias, portanto não é incluído aqui ); sub set { my ($self, $k, $v) = @_; for my $dep ( @{$DEPENDENT_FIELDS{$k}} ) { die "$dep deve ser definido antes de $k" unless defined $self->get($dep); } return $self->SUPER::set( $k, $v ); } Provavelmente alguma coisa parecida pode ser adaptada para suas necessidades. Saudações, Adriano Ferreira > []'s > > > Alceu Rodrigues de Freitas Junior > -------------------------------------- > glasswalk3r em yahoo.com.br > http://www.imortais.cjb.net > ----------------------------------------------------------------------- > A well-used door needs no oil on its hinges. > A swift-flowing stream does not grow stagnant. > Neither sound nor thoughts can travel through a vacuum. > Software rots if not used. > These are great mysteries -- The Tao Of Programming, 5.1 > > > Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! > http://br.mail.yahoo.com/ > _______________________________________________ > > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > From glasswalk3r em yahoo.com.br Tue Jan 8 08:10:11 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 13:10:11 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <3de55ead0801080545p7889e330xd08e51143c8142fb@mail.gmail.com> Message-ID: <155859.30697.qm@web30806.mail.mud.yahoo.com> --- eden escreveu: > Aprender mais um sistema de orientação de objetos > vai lhe fazer mais > bem do que mal. Além disso, quem lida com tecnologia > não pode ter medo > de aprender. A sintaxe do Moose é inspirada no Perl > 6 e é bem simples, > o tempo que você passar lendo um pouco de > documentação vai ser igual > ao tempo que você tá usando postando na lista a > procura de uma solução > e não vai ser desperdiçado por inteiro. Obrigado pela dica Eden. Mas eu realmente não gostaria de aprender isso agora, até pelo meu tempo que é curto (ultimamente tenho que pensar primeiro no que é mais urgente aprender). E mesmo que tivesse tempo para isso, não sei se valeria a pena: a própria especificação do Perl 6 tem mudado com o tempo, eu acho que vou esperar o primeiro release estável. Agora, se eu passar a fazer desenvolvimento mais "sério" com Perl e OOP, aí sim eu consideraria a possibilidade. Só li bons comentários sobre o Moose. Claro, isso é só minha opinião. Eu já acho que postar aqui na lista pode me trazer outras idéias ou propostas, talvez até de redesenhar uma solução para o problema. > Por sinal, tem *mais um* sistema que pode lhe > interessar: > http://search.cpan.org/~claco/Class-Accessor-Grouped-0.07000/lib/Class/Accessor/Grouped.pm > Vou dar uma olhada nesse aí. []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From glasswalk3r em yahoo.com.br Tue Jan 8 08:17:00 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 13:17:00 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <73ddeb6c0801080800s83ccb42qc9821f7cfd476f1c@mail.gmail.com> Message-ID: <781221.2835.qm@web30815.mail.mud.yahoo.com> --- Adriano Ferreira escreveu: > On Jan 8, 2008 10:43 AM, Alceu R. de Freitas Jr. > wrote: > > Aqui vale lembrar que para fazer o Class::Accessor > lhe dar getters e > setters separados segundo o PBP (Perl Best > Practices), basta usar > > use base qw( Class::Accessor ); > __PACKAGE__->follow_best_practices(); > __PACKAGE__->mk_accessors( qw( sibling ... ) ); > > Mas isto é digressão e você provavelmente leu isto > na documentação > (http://search.cpan.org/perldoc?Class::Accessor). Você diz assim? http://search.cpan.org/src/ARFREITAS/DTS-0.03/lib/DTS/Connection.pm :-) > Acho que uma das formas possíveis de fazer isto é > prestar atenção > nesta recomendação: > > "Modifying the behavior of the accessor > > Rather than actually modifying the accessor itself, > it is much more > sensible to simply override the two key methods > which the accessor > calls. Namely set() and get(). > " Acho que comi bola. Isso aqui eu não tinha visto. > Assim acho que, sobrepondo o método set(), com um > código similar a > > # mapa dos atributos dependentes para aqueles de que > eles dependem > my %DEPENDENT_FIELDS = ( > attribute => [ qw(sibling) ], > #sibling não tem dependencias, portanto não é > incluído aqui > ); > > sub set { > my ($self, $k, $v) = @_; > for my $dep ( @{$DEPENDENT_FIELDS{$k}} ) { > die "$dep deve ser definido antes de $k" > unless defined > $self->get($dep); > } > return $self->SUPER::set( $k, $v ); > } > > Provavelmente alguma coisa parecida pode ser > adaptada para suas necessidades. Acredito que sim! Obrigado! []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From glasswalk3r em yahoo.com.br Tue Jan 8 08:19:32 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 8 Jan 2008 13:19:32 -0300 (ART) Subject: [Cascavel-pm] uso de __DATA__ com hierarquia de classes e Template Toolkit In-Reply-To: <1199786869.11383.8.camel@pitombeira> Message-ID: <170934.74537.qm@web30805.mail.mud.yahoo.com> --- Daniel Ruoso escreveu: > Não exatamente. O __DATA__ é um filehandle como > qualquer outro, e você > pode fazer seek nele. O único problema é que, ao > contrário do que se > pensa, ele não aponta somente para o trecho depois > do __DATA__, mas sim > para o arquivo inteiro, então na hora que você fizer > seek 0, ele vai > para o início do arquivo 8|. Então uma alternativa é > você guardar a > posição atual do fh antes de usar usando o tell, e > depois fazer seek > para essa mesma posição. "O diabo mora nos detalhes"... obrigado Daniel! :-) []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From edencardim em gmail.com Tue Jan 8 08:50:34 2008 From: edencardim em gmail.com (eden) Date: Tue, 8 Jan 2008 13:50:34 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofi?= =?iso-8859-1?q?sticados=29?= In-Reply-To: <155859.30697.qm@web30806.mail.mud.yahoo.com> References: <3de55ead0801080545p7889e330xd08e51143c8142fb@mail.gmail.com> <155859.30697.qm@web30806.mail.mud.yahoo.com> Message-ID: <3de55ead0801080850g7fbf1223x817c8774415979e9@mail.gmail.com> On Jan 8, 2008 1:10 PM, Alceu R. de Freitas Jr. wrote: > Obrigado pela dica Eden. Mas eu realmente não gostaria > de aprender isso agora, até pelo meu tempo que é curto > (ultimamente tenho que pensar primeiro no que é mais > urgente aprender). E mesmo que tivesse tempo para > isso, não sei se valeria a pena: a própria > especificação do Perl 6 tem mudado com o tempo, eu > acho que vou esperar o primeiro release estável. > Agora, se eu passar a fazer desenvolvimento mais > "sério" com Perl e OOP, aí sim eu consideraria a > possibilidade. Só li bons comentários sobre o Moose. Muda mas muda pouco, como eu falei, a sintaxe é similar, não idêntica. O Moose já tá bastante estável e é utilizado em diversos ambientes de produção. -- edenc.vox.com From acid06 em gmail.com Tue Jan 8 08:59:08 2008 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 8 Jan 2008 14:59:08 -0200 Subject: [Cascavel-pm] Sobre o perltidy In-Reply-To: <572750180801080236n6fbe66ecl9c83a834d45fdf24@mail.gmail.com> References: <20080107232351.7594dfa2@dracco.home> <9a08c9b40801071958m51712457ncb67ab196f23c835@mail.gmail.com> <572750180801080236n6fbe66ecl9c83a834d45fdf24@mail.gmail.com> Message-ID: <9a08c9b40801080859m705dc3bdod34df5bc4a7c7fb6@mail.gmail.com> On Jan 8, 2008 8:36 AM, Giuliani Deon Sanches wrote: > $ALL_CAPS_HERE constants only (beware clashes with perl vars!) > $Some_Caps_Here package-wide global/static > $no_caps_here function scope my() or local() variables Certo, na prática você não deve usar variáveis globais e quando usa elas vão ter o sentido de constantes ou variáveis de configuração. A maior parte dos módulos (exemplo: variáveis de configuração do TT), apesar do perlstyle sugerir algo ligeiramente diferente. De fato, o melhor que você faz é evitar variáveis e utilizar métodos pra configurar as coisas. Daí esse problema nem existe mais. Se realmente tiver que usar uma variável global, daí utiliza a convenção sugerida. Eu me lembro que as únicas vezes que usei isso foi quando implementava memoizing na mão pra criar uma variável %Cache (algo que você não deveria fazer - use o módulo Memoize). -Nilson Santos F. Jr. From luismottacampos em yahoo.co.uk Wed Jan 9 02:00:18 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Wed, 09 Jan 2008 11:00:18 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <884012.59749.qm@web30806.mail.mud.yahoo.com> References: <884012.59749.qm@web30806.mail.mud.yahoo.com> Message-ID: <47849B32.2010606@yahoo.co.uk> Alceu R. de Freitas Jr. wrote: > --- Luis Motta Campos > escreveu: > >> O que exatamente você quer fazer que o >> Class::Accessor não te oferece >> pronto, Alceu? > > Talvez ele ofereça... mas eu ainda não descobri como. > >> Eu ainda não entendi o que os teus métodos de acesso >> tem de especiais. >> Pode ser distração minha, também... > > Ou meus emails andam confusos demais... De qualquer > forma, vamos para um exemplo que é mais fácil. > > Quando eu criei módulos para acessar recurso pacotes > DTS, eu encapsulei o objeto fornecido via COM através > do módulo Win32::OLE. Até então eu só utilizava > métodos de leitura (get_) para ler os atributos. > > Agora resolvi ir mais longe e oferecer métodos para > alterar esses atributos. Mas aí tenho um problema de > sincronização, eu tenho que alterar ambos os objetos > (o da classe DTS e o objeto obtido via COM). > > O objeto via COM é referenciado por um atributo > "oculto" chamado _sibling. Eu só conseguiria alterar > um atributo e sincronizar o valor entre os dois > objetos se esse atributo _sibling estiver disponível. > Se eu fosse escrever isso na mão, eu teria um trabalho > chato para fazer. > > Eu imagino algo assim: > > sub set_attribute { > > my $self = shift; > my $attrib = shift; > my $value = shift; > > die "não consigo configurar nada sem _sibling" > unless (defined($self->{_sibling})); > > #restante do código viria aqui > > } Parece que você interrompeu isso bruscamente. Você está no caminho certo; precisa construir um método genérico capaz de, dado o nome de um atributo e o valor que se deseja atribuir, realize a alteração. Mas isso é apenas metade do seu problema. Você tem de gerar os métodos de acesso, depois. De qualquer forma, se você conseguir construir uma lista de atributos interessantes (talvez consultando o tal "_sibling"?), pode usar o Class::Accessor para criar os teus métodos de acesso. Para que os teus métodos de acesso façam o que você espera, você precisa sobrecarregar os métodos Class::Accessor::get() e Class::Accessor::set(), para que eles saibam o que alterar e como (no caso do set()) e o que consultar e como devolver valores (no caso do get()). Assim, ao invés de implementar set_attribute(), você precisa implementar set(), na sua classe, e garantir as chamadas necessárias para o Class::Accessor: #!perl use strict; use warnings; use base qw( Class::Accessor ); __PACKAGE__->mk_accessors( @Lista_De_Atributos_Calculada_Pelo_Alceu ); =pod =head2 B> =head2 B> Métodos de acesso usados pelo C para gerar automaticamente os métodos de acesso de cada atributo. C lê e devolve um valor do atributo cujo nome é C<$key>. C lê e devolve os valores dos atributos cujos nomes estão listados em C<@keys>. =cut sub get { # você já escreveu este método, provavelmente, # é o teu método de leitura de atributos. } =pod =head2 B> =head2 B> Métodos de acesso usados pelo C para gerar automaticamente os métodos de acesso de cada atributo. C guarda o valor C<$value> no atributo nomeado por C<$key>. C guarda B os valores passados em C<@values> no atributo nomeado por C<$key>. =cut sub set { # Este é possivelmente o método que você # começou a me escrever lá em cima, no começo deste email. } __END__ Espero que isso ajude. Se você precisar de mais ajuda, por favor não se sinta constrangido - é muito difícil eu ter uma oportunidade de ajudar você, -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From ptfzs em yahoo.com.br Mon Jan 14 10:09:53 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Mon, 14 Jan 2008 10:09:53 -0800 (PST) Subject: [Cascavel-pm] Duvida em contar elemento no array Message-ID: <827066.36144.qm@web31305.mail.mud.yahoo.com> Pessoal, como de sugestao de pessoas da lista, estou tentar contar quantidade de elementos em um array.. vou no banco e recupero os dados : ..... ..... while ( my @row = $sth2->fetchrow_array( ) ) { my $tot=0; my @cont_var; my $cont_var; @cont_var=("$umid","$dir","$ven","$pre","$vel","$velv","$pres","$par","$min","$max","$tacao","$lo"); $cont_var{$_}++ for @cont_var; # contar os números foreach my $key1 (keys %cont_var) { if($key1 >= 5) { $tot_flag++; } } print "TOT_FLAG=>>$tot_flag\n"; so que ele nao esta zerando.. na 1 passagem ele faz correto na segunda ele conta a 1 + a 2 :/ Alguem pode me dar uma luz.. Obrigada Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080114/b28217cc/attachment.html From shonorio em gmail.com Mon Jan 14 11:00:16 2008 From: shonorio em gmail.com (Solli Honorio) Date: Mon, 14 Jan 2008 17:00:16 -0200 Subject: [Cascavel-pm] Duvida em contar elemento no array In-Reply-To: <827066.36144.qm@web31305.mail.mud.yahoo.com> References: <827066.36144.qm@web31305.mail.mud.yahoo.com> Message-ID: <12d1f4ee0801141100u1b2432bfm58a6eb296a8f5e97@mail.gmail.com> Em 14/01/08, Patty Silva escreveu: > > Pessoal, > como de sugestao de pessoas da lista, estou tentar contar quantidade de > elementos em um array.. > > vou no banco e recupero os dados : > > ..... > ..... > > > while ( my @row = $sth2->fetchrow_array( ) ) > { > my $tot=0; > my @cont_var; > my $cont_var; > Patty, estou confuso neste ponto (entre outros)... você está declarando um array 'cont_var' e uma string 'cont_var' ao mesmo tempo ? Este programa roda com stricts e '-w' ? > @cont_var=("$umid","$dir","$ven","$pre","$vel","$velv","$pres","$par","$min","$max","$tacao","$lo"); > > > > $cont_var{$_}++ for @cont_var; # contar os números > > > foreach my $key1 (keys %cont_var) > { > > if($key1 >= 5) > { > $tot_flag++; > > } > > } > > print "TOT_FLAG=>>$tot_flag\n"; > > > > > > so que ele nao esta zerando.. na 1 passagem ele faz correto na segunda ele > conta a 1 + a 2 :/ > Mas onde você está pedindo para 'zerar' ? E quem você quer zerar ? Alguem pode me dar uma luz.. > > Obrigada > > ------------------------------ > Abra sua conta no Yahoo! Mail, > o único sem limite de espaço para armazenamento! > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080114/f4e96ff9/attachment.html From acid06 em gmail.com Mon Jan 14 12:34:08 2008 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Mon, 14 Jan 2008 18:34:08 -0200 Subject: [Cascavel-pm] Duvida em contar elemento no array In-Reply-To: <12d1f4ee0801141100u1b2432bfm58a6eb296a8f5e97@mail.gmail.com> References: <827066.36144.qm@web31305.mail.mud.yahoo.com> <12d1f4ee0801141100u1b2432bfm58a6eb296a8f5e97@mail.gmail.com> Message-ID: <9a08c9b40801141234i18ae4d9bjb02045c4936ea20b@mail.gmail.com> 2008/1/14 Solli Honorio : > Patty, estou confuso neste ponto (entre outros)... você está declarando um > array 'cont_var' e uma string 'cont_var' ao mesmo tempo ? Este programa > roda com stricts e '-w' ? Claro, isso não é um erro ou um problema de forma alguma. Todos os namespaces são separados em Perl. use warnings; use strict; my ($var, @var, %var); open(var, 'file'); É perfeitamente válido. Se é recomendado, bom, aí são outros 500. ;-) -Nilson Santos F. Jr. From ptfzs em yahoo.com.br Mon Jan 14 13:18:01 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Mon, 14 Jan 2008 13:18:01 -0800 (PST) Subject: [Cascavel-pm] Res: Duvida em contar elemento no array Message-ID: <110480.65338.qm@web31304.mail.mud.yahoo.com> Eu zero em my $tot=0; mas ele nao zera :/ Tem como eu contar elementos de outra forma? Ex: array=(4,3,10,45,23) contar os elementos > q 5 :D Obrigada ----- Mensagem original ---- De: Solli Honorio Para: Cascavel Perl Mongers Enviadas: Segunda-feira, 14 de Janeiro de 2008 17:00:16 Assunto: Re: [Cascavel-pm] Duvida em contar elemento no array Em 14/01/08, Patty Silva escreveu: Pessoal, como de sugestao de pessoas da lista, estou tentar contar quantidade de elementos em um array.. vou no banco e recupero os dados : ..... ..... while ( my @row = $sth2->fetchrow_array( ) ) { my $tot=0; my @cont_var; my $cont_var; Patty, estou confuso neste ponto (entre outros)... você está declarando um array 'cont_var' e uma string 'cont_var' ao mesmo tempo ? Este programa roda com stricts e '-w' ? @cont_var=("$umid","$dir","$ven","$pre","$vel","$velv","$pres","$par","$min","$max","$tacao","$lo"); $cont_var{$_}++ for @cont_var; # contar os números foreach my $key1 (keys %cont_var) { if($key1 >= 5) { $tot_flag++; } } print "TOT_FLAG=>>$tot_flag\n"; so que ele nao esta zerando.. na 1 passagem ele faz correto na segunda ele conta a 1 + a 2 :/ Mas onde você está pedindo para 'zerar' ? E quem você quer zerar ? Alguem pode me dar uma luz.. Obrigada Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm -- "o animal satisfeito dorme". - Guimarães Rosa Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080114/cec1e937/attachment.html From acid06 em gmail.com Mon Jan 14 14:35:16 2008 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Mon, 14 Jan 2008 20:35:16 -0200 Subject: [Cascavel-pm] Res: Duvida em contar elemento no array In-Reply-To: <110480.65338.qm@web31304.mail.mud.yahoo.com> References: <110480.65338.qm@web31304.mail.mud.yahoo.com> Message-ID: <9a08c9b40801141435u5125f439vf941e346acc75ac7@mail.gmail.com> 2008/1/14 Patty Silva : > Tem como eu contar elementos de outra forma? my @array = (1, 2, 3, 4, 5, 6, 7, 8, 9); my $count = scalar grep { $_ >= 5 } @array; -Nilson Santos F. Jr. From ptfzs em yahoo.com.br Mon Jan 14 15:01:28 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Mon, 14 Jan 2008 15:01:28 -0800 (PST) Subject: [Cascavel-pm] Res: Res: Duvida em contar elemento no array Message-ID: <949442.89246.qm@web31301.mail.mud.yahoo.com> Nilson :D Muito Obrigada onde eu posso encontrar apostilas, artigos sobre hash... ??? scalar??? Obrigada ----- Mensagem original ---- De: Nilson Santos Figueiredo Junior Para: Cascavel Perl Mongers Enviadas: Segunda-feira, 14 de Janeiro de 2008 20:35:16 Assunto: Re: [Cascavel-pm] Res: Duvida em contar elemento no array 2008/1/14 Patty Silva : > Tem como eu contar elementos de outra forma? my @array = (1, 2, 3, 4, 5, 6, 7, 8, 9); my $count = scalar grep { $_ >= 5 } @array; -Nilson Santos F. Jr. _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080114/d101bb0b/attachment.html From edencardim em gmail.com Mon Jan 14 15:05:15 2008 From: edencardim em gmail.com (eden) Date: Mon, 14 Jan 2008 20:05:15 -0300 Subject: [Cascavel-pm] Res: Res: Duvida em contar elemento no array In-Reply-To: <949442.89246.qm@web31301.mail.mud.yahoo.com> References: <949442.89246.qm@web31301.mail.mud.yahoo.com> Message-ID: <3de55ead0801141505y1a8cf888na750725b40e8e72b@mail.gmail.com> 2008/1/14 Patty Silva : > > Nilson :D > Muito Obrigada > onde eu posso encontrar apostilas, artigos sobre hash... ??? scalar??? Na documentação do perl: perldoc perlintro -- edenc.vox.com From shonorio em gmail.com Mon Jan 14 19:06:00 2008 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 15 Jan 2008 01:06:00 -0200 Subject: [Cascavel-pm] Duvida em contar elemento no array In-Reply-To: <9a08c9b40801141234i18ae4d9bjb02045c4936ea20b@mail.gmail.com> References: <827066.36144.qm@web31305.mail.mud.yahoo.com> <12d1f4ee0801141100u1b2432bfm58a6eb296a8f5e97@mail.gmail.com> <9a08c9b40801141234i18ae4d9bjb02045c4936ea20b@mail.gmail.com> Message-ID: <12d1f4ee0801141906y54816e6dp7d2dcc1833d9b3c5@mail.gmail.com> Em 14/01/08, Nilson Santos Figueiredo Junior escreveu: > > 2008/1/14 Solli Honorio : > > Patty, estou confuso neste ponto (entre outros)... você está > declarando um > > array 'cont_var' e uma string 'cont_var' ao mesmo tempo ? Este programa > > roda com stricts e '-w' ? > > Claro, isso não é um erro ou um problema de forma alguma. Todos os > namespaces são separados em Perl. > > use warnings; > use strict; > > my ($var, @var, %var); > open(var, 'file'); Válido eu sei, só estava preocupado com os 'outros 500' :-] .... É perfeitamente válido. > Se é recomendado, bom, aí são outros 500. ;-) > > -Nilson Santos F. Jr. > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/b04e124b/attachment.html From shonorio em gmail.com Mon Jan 14 19:21:44 2008 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 15 Jan 2008 01:21:44 -0200 Subject: [Cascavel-pm] Res: Res: Duvida em contar elemento no array In-Reply-To: <949442.89246.qm@web31301.mail.mud.yahoo.com> References: <949442.89246.qm@web31301.mail.mud.yahoo.com> Message-ID: <12d1f4ee0801141921w3442d62bq2356e4510ef33c87@mail.gmail.com> Em 14/01/08, Patty Silva escreveu: > > Nilson :D > Muito Obrigada > onde eu posso encontrar apostilas, artigos sobre hash... ??? scalar??? > > Obrigada > Se o inglês não for o problema, pode procurar no http://www.perl.org/books/library.html, no http://www.perltraining.com.au/notes.html e claro no http://www.perl.org.br. ----- Mensagem original ---- > De: Nilson Santos Figueiredo Junior > Para: Cascavel Perl Mongers > Enviadas: Segunda-feira, 14 de Janeiro de 2008 20:35:16 > Assunto: Re: [Cascavel-pm] Res: Duvida em contar elemento no array > > 2008/1/14 Patty Silva : > > Tem como eu contar elementos de outra forma? > > my @array = (1, 2, 3, 4, 5, 6, 7, 8, 9); > my $count = scalar grep { $_ >= 5 } @array; > > -Nilson Santos F. Jr. > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > > ------------------------------ > Abra sua conta no Yahoo! Mail, > o único sem limite de espaço para armazenamento! > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/b5e66ef4/attachment-0001.html From rafamv1 em ig.com.br Tue Jan 15 04:42:48 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Tue, 15 Jan 2008 09:42:48 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= Message-ID: <3e759d2b0801150442s24201b46v571270756f00bd72@mail.gmail.com> Bom dia, pessoal. Estou tentando apagar todos os arquivos de um diretório com o código abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? A variável $user contem o diretório de cada usuário. Quero apagar os arquivos que existem dentro de cada diretório. Trecho do código: my $dir = '/[diretorio principal]'; foreach my $user (@users) { unlink glob("$dir/$user/*.*"); } -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/1ddb45f7/attachment.html From rafamv1 em ig.com.br Tue Jan 15 05:51:41 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Tue, 15 Jan 2008 10:51:41 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rio?= Message-ID: <3e759d2b0801150551g20c8548cq566846a292cda0f1@mail.gmail.com> Bom dia, pessoal. Estou tentando apagar todos os arquivos de um diretório com o código abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? A variável $user contem o diretório de cada usuário. Quero apagar os arquivos que existem dentro de cada diretório. Trecho do código: my $dir = '/[diretorio principal]'; foreach my $user (@users) { unlink glob("$dir/$user/*.*"); } -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/94cea665/attachment.html From hamilton.listas em gmail.com Tue Jan 15 10:09:24 2008 From: hamilton.listas em gmail.com (Hamilton Vera) Date: Tue, 15 Jan 2008 16:09:24 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Substituindo_n=FAmeros_com_zero_a_es?= =?iso-8859-1?q?querda=2E?= Message-ID: <70ebb3b30801151009r3b1f85ddj1bc3dd0ee4bb3c5b@mail.gmail.com> Boa tarde mestres, Estou trabalhando em um arquivo imenso para importa-lo de maneira correta em um sistema. Consegui tratar quase todos os campos perfeitamente, exceto; Grupo: A T I V O Levantado em 20/07/2007 Folha 00001 ....dados.... Grupo: P A S S I V O Levantado em 20/07/2007 Folha 00002 ....dados.... Grupo: P A S S I V O Levantado em 20/07/2007 Folha 00004 ....dados.... Grupo: P A S S I V O Levantado em 20/07/2007 Folha 00005 ...dados.... Meu obstáculo é converter o "Folha 0000x" em um valor "incremental que deveria começar em "Folha 00002" (mantendo os zeros a esquerda). Tentei algo tolo como; $line =~ s/Folha \d+/Folha $count/; Só que não consigo manter os zeros a esquerda. Pensei em fazer um split e depois imprimir a parte numérica em separado, printf '%05s', $count; deu certo, mas gostaria de saber uma forma mais galante para fazer isso. Muito obrigado. -- Hamilton Vera int Administrator (char Network[],char ComputationalSystems[]); "Google is my shepherd, no want shall I know" From rafamv1 em ig.com.br Tue Jan 15 11:54:35 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Tue, 15 Jan 2008 16:54:35 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= Message-ID: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> Bom dia, pessoal. Estou tentando apagar todos os arquivos de um diretório com o código abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? A variável $user contem o diretório de cada usuário. Quero apagar os arquivos que existem dentro de cada diretório. Trecho do código: my $dir = '/[diretorio principal]'; foreach my $user (@users) { unlink glob("$dir/$user/*.*"); } -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/ab0074d7/attachment.html From wendelscardua em gmail.com Tue Jan 15 12:26:39 2008 From: wendelscardua em gmail.com (Wendel Scardua) Date: Tue, 15 Jan 2008 18:26:39 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> Message-ID: <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> Que é isso ? Mensagens velhas voltando à vida ? De coisas já respondidas a 11 dias atrás ? []s Wendel ps: porque você chama seu código de "bomba" ? É que não me agrada muito o nome, dá a impressão de que isso é usado onde não deve... 2008/1/15 Rafael Lebrao Martins : > Bom dia, pessoal. Estou tentando apagar todos os arquivos de um diretório > com o código > abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? > > A variável $user contem o diretório de cada usuário. Quero apagar os > arquivos que existem > dentro de cada diretório. > > Trecho do código: > > my $dir = '/[diretorio principal]'; > foreach my $user (@users) { > unlink glob("$dir/$user/*.*"); > > } > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/cd0b2610/attachment.html From rafamv1 em ig.com.br Tue Jan 15 12:35:19 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Tue, 15 Jan 2008 17:35:19 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> Message-ID: <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> Olá. Não é uma "mensagem velha voltando à vida".. A minha dúvida anterior era quanto à remoção de diretórios cheios.. Agora estou querendo remover todos os arquivos de um ou mais diretórios.. Em 15/01/08, Wendel Scardua escreveu: > > Que é isso ? Mensagens velhas voltando à vida ? De coisas já respondidas a > 11 dias atrás ? > > []s > Wendel > > ps: porque você chama seu código de "bomba" ? É que não me agrada muito o > nome, dá a impressão de que isso é usado onde não deve... > > 2008/1/15 Rafael Lebrao Martins : > > > Bom dia, pessoal. Estou tentando apagar todos os arquivos de um > > diretório com o código > > abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? > > > > A variável $user contem o diretório de cada usuário. Quero apagar os > > arquivos que existem > > dentro de cada diretório. > > > > Trecho do código: > > > > my $dir = '/[diretorio principal]'; > > foreach my $user (@users) { > > unlink glob("$dir/$user/*.*"); > > > > } > > > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080115/b4b04f12/attachment.html From a.r.ferreira em gmail.com Tue Jan 15 12:21:17 2008 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Tue, 15 Jan 2008 18:21:17 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <3e759d2b0801150442s24201b46v571270756f00bd72@mail.gmail.com> References: <3e759d2b0801150442s24201b46v571270756f00bd72@mail.gmail.com> Message-ID: <73ddeb6c0801151221q73af42f5je29d881d36ceef89@mail.gmail.com> 2008/1/15 Rafael Lebrao Martins : > > > Bom dia, pessoal. Estou tentando apagar todos os arquivos de um diretório > com o código > abaixo, mas essa "bomba" não apaga nada. O que há de errado nisso ai? > A variável $user contem o diretório de cada usuário. Quero apagar os > arquivos que existem > dentro de cada diretório. > > Trecho do código: > > my $dir = '/[diretorio principal]'; > > foreach my $user (@users) { > unlink glob("$dir/$user/*.*"); > > } Para saber o que está acontecendo é uma boa idéia olhar o que o "glob" está retornando: my @files = glob("$dir/$user/*.*"); print "files: @files\n"; Talvez você possa usar também o File::Path::rmtree: http://perldoc.perl.org/File/Path.html Saudações, Adriano > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > From glasswalk3r em yahoo.com.br Tue Jan 15 13:35:26 2008 From: glasswalk3r em yahoo.com.br (Alceu R. de Freitas Jr.) Date: Tue, 15 Jan 2008 18:35:26 -0300 (ART) Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <47849B32.2010606@yahoo.co.uk> Message-ID: <856979.15079.qm@web30809.mail.mud.yahoo.com> Oi Champs, --- Luis Motta Campos escreveu: [tutorial de Class::Accessor] > __END__ > > Espero que isso ajude. > Se você precisar de mais ajuda, por favor não se > sinta constrangido - é > muito difícil eu ter uma oportunidade de ajudar > você, Deve ser a diferença de fuso... ou então que o nível da lista melhorou! Ou os dois!! Acho que você está perdendo a primeira posição de envio de respostas mais rápidas (temos essa competição?). Ano passado você ganhou na quantidade, mas do jeito que as coisas andam, você vai precisar de um BOT para se manter no páreo! :-) Obrigado pela ajuda. []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r em yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From nferraz em gmail.com Tue Jan 15 18:12:44 2008 From: nferraz em gmail.com (Nelson Ferraz) Date: Wed, 16 Jan 2008 02:12:44 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Substituindo_n=FAmeros_com_zero_a_es?= =?iso-8859-1?q?querda=2E?= In-Reply-To: <70ebb3b30801151009r3b1f85ddj1bc3dd0ee4bb3c5b@mail.gmail.com> References: <70ebb3b30801151009r3b1f85ddj1bc3dd0ee4bb3c5b@mail.gmail.com> Message-ID: <604cec170801151812s31ce0c53ofc2acdb82f94afd5@mail.gmail.com> > Tentei algo tolo como; > > $line =~ s/Folha \d+/Folha $count/; > > Só que não consigo manter os zeros a esquerda. > > Pensei em fazer um split e depois imprimir a parte numérica em separado, > > printf '%05s', $count; > > deu certo, mas gostaria de saber uma forma mais galante para fazer isso. Você está no caminho certo. Agora pode combinar as duas soluções colocando um /e no final da expressão regular, que significa realizar um "eval" no lado direito da regexp: my $line = "Folha 1234"; my $count = 5; $line =~ s/Folha \d+/sprintf('Folha %05d', $count)/e; print $line; From ptfzs em yahoo.com.br Wed Jan 16 04:12:36 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Wed, 16 Jan 2008 04:12:36 -0800 (PST) Subject: [Cascavel-pm] Declaracao de variaveis Message-ID: <307905.70271.qm@web31314.mail.mud.yahoo.com> Pessoal, eu sou obrigada a inicializar variaveis?? Estou usando a biblioteca use Getopt::Std; so que quando eu nao entro com a opcao -i no caso, ele da esse erro: Use of uninitialized value in string if(!$opt_i) -------------> nessa linha { next if ($varaux && $DBM>=$ROW); } ??? Obrigada Pessoal Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/fce7cf99/attachment.html From giulianisanches em gmail.com Wed Jan 16 04:16:47 2008 From: giulianisanches em gmail.com (Giuliani Deon Sanches) Date: Wed, 16 Jan 2008 10:16:47 -0200 Subject: [Cascavel-pm] Declaracao de variaveis In-Reply-To: <307905.70271.qm@web31314.mail.mud.yahoo.com> References: <307905.70271.qm@web31314.mail.mud.yahoo.com> Message-ID: <572750180801160416s4a30bda6l977369d9ca70d1a1@mail.gmail.com> Inicializar acredito que não (mas você vai precisar atribuir valores nelas para poder testar suas condições corretamente), mas declarar sim: my $opt_i; my $varaux; my$DBM; my $ROW; if(!$opt_i) { next if ($varaux && $DBM>=$ROW); } Em 16/01/08, Patty Silva escreveu: > > Pessoal, > eu sou obrigada a inicializar variaveis?? > > Estou usando a biblioteca use Getopt::Std; > so que quando eu nao entro com a opcao -i no caso, ele da esse erro: > > Use of uninitialized value in string > > > if(!$opt_i) -------------> nessa linha > { > next if ($varaux && $DBM>=$ROW); > } > > > ??? > > Obrigada Pessoal > > > > > > ________________________________ > Abra sua conta no Yahoo! Mail, o único sem limite de espaço para > armazenamento! > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > From nferraz em gmail.com Wed Jan 16 06:36:22 2008 From: nferraz em gmail.com (Nelson Ferraz) Date: Wed, 16 Jan 2008 14:36:22 +0000 Subject: [Cascavel-pm] Declaracao de variaveis In-Reply-To: <307905.70271.qm@web31314.mail.mud.yahoo.com> References: <307905.70271.qm@web31314.mail.mud.yahoo.com> Message-ID: <604cec170801160636j118edaf2o9c30729b25dd9c05@mail.gmail.com> > Estou usando a biblioteca use Getopt::Std; > so que quando eu nao entro com a opcao -i no caso, ele da esse erro: > > Use of uninitialized value in string Patty, Isso não é um "erro"; é um "warning". Significa que você está usando a diretiva "use warnings" (o que é muito bom!) e o perl está tentando te ajudar a eliminar problemas em potencial. Para obter uma explicação mais precisa dos warnings, você pode incluir a seguinte linha: use diagnostics; Com relação à pergunta inicial: > eu sou obrigada a inicializar variaveis?? Você não é obrigada, mas esta é considerada uma boa prática. Uma alternativa é testar se uma variável foi definida, com a função "defined": if (defined $foo) { # ... } []s Nelson -- Nelson Ferraz Free Software Foundation Associate Member #3203 Projeto Software Livre Brasil (www.softwarelivre.org.br) Sociedade Perl do Brasil (www.perl.org.br) Rede Livre de Compartilhamento de Cultura Digital From ptfzs em yahoo.com.br Wed Jan 16 08:19:12 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Wed, 16 Jan 2008 08:19:12 -0800 (PST) Subject: [Cascavel-pm] Res: Duvida campo numerico Message-ID: <62041.40859.qm@web31310.mail.mud.yahoo.com> Pessoal.. uma duvida:: pq ele nao aceita: my $teste=0; if($teste) { print "Contem Dados\n"; } else { print "Nao contem Dados\n"; } Ele imprime "Nao Contem Dados" pq? sendo q é = a 0 Obrigada ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quinta-feira, 11 de Outubro de 2007 13:42:40 Assunto: Re: [Cascavel-pm] Duvida campo numerico Obrigada pela dica :D O problema eh que ele retorna do banco vazio aparentemente,, mas se fou verificar com defined ele nao pega.. :/ O problema deve estar ao retornar do banco.. Nelson Ferraz escreveu: Em Oct 11, 2007, às 12:56 PM, Patty Silva escreveu: > Se eu colocar if($fields[4] =="\\N") > ele entra no IF > :/ > pq sera q no banco esta assim? Calma, Patty... vamos voltar para o básico. Como você deve se lembrar, não existe diferença entre variáveis numéricas e alfanuméricas em Perl: as mesmas variáveis (escalares) podem armazenar letras e números. O que acontece se você quiser comparar, por exemplo, $a=7 com $b="007"? As duas variáveis têm valores iguais ou diferentes? A resposta é: depende. Se compararmos numericamente, $a e $b são iguais; mas se compararmos literalmente, são diferentes. Portanto, quando você estiver trabalhando com números, utilize comparações numéricas, e quando estiver trabalhando com strings, utilize comparações literais: # Comparações numéricas if ($idade == 18) { ... } if ($idade > 100) { ... } # Comparações literais if ($resposta eq "s") { ... } if ($field ne "") { ... } _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/951db72e/attachment.html From ptfzs em yahoo.com.br Wed Jan 16 08:24:05 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Wed, 16 Jan 2008 08:24:05 -0800 (PST) Subject: [Cascavel-pm] Res: Res: Duvida campo numerico Message-ID: <219839.12562.qm@web31303.mail.mud.yahoo.com> Desculpem esqueci de mencionar se colocar o defined.. dai da certo..:/ alguem pode explicar?? Obrigada ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quarta-feira, 16 de Janeiro de 2008 16:19:12 Assunto: [Cascavel-pm] Res: Duvida campo numerico Pessoal.. uma duvida:: pq ele nao aceita: my $teste=0; if($teste) { print "Contem Dados\n"; } else { print "Nao contem Dados\n"; } Ele imprime "Nao Contem Dados" pq? sendo q é = a 0 Obrigada ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quinta-feira, 11 de Outubro de 2007 13:42:40 Assunto: Re: [Cascavel-pm] Duvida campo numerico Obrigada pela dica :D O problema eh que ele retorna do banco vazio aparentemente,, mas se fou verificar com defined ele nao pega.. :/ O problema deve estar ao retornar do banco.. Nelson Ferraz escreveu: Em Oct 11, 2007, às 12:56 PM, Patty Silva escreveu: > Se eu colocar if($fields[4] =="\\N") > ele entra no IF > :/ > pq sera q no banco esta assim? Calma, Patty... vamos voltar para o básico. Como você deve se lembrar, não existe diferença entre variáveis numéricas e alfanuméricas em Perl: as mesmas variáveis (escalares) podem armazenar letras e números. O que acontece se você quiser comparar, por exemplo, $a=7 com $b="007"? As duas variáveis têm valores iguais ou diferentes? A resposta é: depende. Se compararmos numericamente, $a e $b são iguais; mas se compararmos literalmente, são diferentes. Portanto, quando você estiver trabalhando com números, utilize comparações numéricas, e quando estiver trabalhando com strings, utilize comparações literais: # Comparações numéricas if ($idade == 18) { ... } if ($idade > 100) { ... } # Comparações literais if ($resposta eq "s") { ... } if ($field ne "") { ... } _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/b80d3c89/attachment.html From danielrantunes em yahoo.com.br Wed Jan 16 08:46:16 2008 From: danielrantunes em yahoo.com.br (=?iso-8859-1?Q?Daniel_=AE_Antunes?=) Date: Wed, 16 Jan 2008 08:46:16 -0800 (PST) Subject: [Cascavel-pm] Res: Res: Res: Duvida campo numerico Message-ID: <203982.8944.qm@web36914.mail.mud.yahoo.com> Td que é diferente de zero é "true" (verdadeiro) e o zero é "false" (falso). Qdo vc utiliza o defined a análise feita é se a variável está "definida", ou seja; não é avaliado o seu valor. if ($teste) não é uma condição verdadeira pois o valor de $teste é 0 (falso) if (defined $teste) é uma condição verdadeira pois o retorno da avaliação da expressão é 1 (verdadeiro) Eu sou ruim para explicar mas espero que isto te ajude. É um conceito básico em programação. Abraço. Daniel ® Antunes profissional de informática msn daniel em daniel-antunes.com.br gnu/linux user #238553 ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quarta-feira, 16 de Janeiro de 2008 14:24:05 Assunto: [Cascavel-pm] Res: Res: Duvida campo numerico Desculpem esqueci de mencionar se colocar o defined.. dai da certo..:/ alguem pode explicar?? Obrigada ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quarta-feira, 16 de Janeiro de 2008 16:19:12 Assunto: [Cascavel-pm] Res: Duvida campo numerico Pessoal.. uma duvida:: pq ele nao aceita: my $teste=0; if($teste) { print "Contem Dados\n"; } else { print "Nao contem Dados\n"; } Ele imprime "Nao Contem Dados" pq? sendo q é = a 0 Obrigada ----- Mensagem original ---- De: Patty Silva Para: Cascavel Perl Mongers Enviadas: Quinta-feira, 11 de Outubro de 2007 13:42:40 Assunto: Re: [Cascavel-pm] Duvida campo numerico Obrigada pela dica :D O problema eh que ele retorna do banco vazio aparentemente,, mas se fou verificar com defined ele nao pega.. :/ O problema deve estar ao retornar do banco.. Nelson Ferraz escreveu: Em Oct 11, 2007, às 12:56 PM, Patty Silva escreveu: > Se eu colocar if($fields[4] =="\\N") > ele entra no IF > :/ > pq sera q no banco esta assim? Calma, Patty... vamos voltar para o básico. Como você deve se lembrar, não existe diferença entre variáveis numéricas e alfanuméricas em Perl: as mesmas variáveis (escalares) podem armazenar letras e números. O que acontece se você quiser comparar, por exemplo, $a=7 com $b="007"? As duas variáveis têm valores iguais ou diferentes? A resposta é: depende. Se compararmos numericamente, $a e $b são iguais; mas se compararmos literalmente, são diferentes. Portanto, quando você estiver trabalhando com números, utilize comparações numéricas, e quando estiver trabalhando com strings, utilize comparações literais: # Comparações numéricas if ($idade == 18) { ... } if ($idade > 100) { ... } # Comparações literais if ($resposta eq "s") { ... } if ($field ne "") { ... } _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/b74c8209/attachment-0001.html From edencardim em gmail.com Wed Jan 16 09:10:59 2008 From: edencardim em gmail.com (eden) Date: Wed, 16 Jan 2008 14:10:59 -0300 Subject: [Cascavel-pm] Res: Res: Res: Duvida campo numerico In-Reply-To: <203982.8944.qm@web36914.mail.mud.yahoo.com> References: <203982.8944.qm@web36914.mail.mud.yahoo.com> Message-ID: <3de55ead0801160910n67f0b6b3u5a70afb99913f011@mail.gmail.com> 2008/1/16 Daniel (R) Antunes : > > > Td que é diferente de zero é "true" (verdadeiro) e o zero é "false" > (falso). na verdade, os valores 0, '' (string vazia) e undef avaliam como falso em contexto booleano, todos os outros valores são verdadeiros. > Qdo vc utiliza o defined a análise feita é se a variável está > "definida", ou seja; não é avaliado o seu valor. O valor é avaliado sim, a função defined() indica se o valor contido na variável é undef. O comportamento que você mencionou ocorre com a função exists() que só se aplica a chaves de hashes. > if ($teste) não é uma condição verdadeira pois o valor de $teste é 0 (falso) > if (defined $teste) é uma condição verdadeira pois o retorno da avaliação da > expressão é 1 (verdadeiro) Depois da sessão de chatisse... Agora sim, eu concordo, é isso mesmo... :) -- edenc.vox.com From jaja.gabriel em gmail.com Wed Jan 16 10:08:33 2008 From: jaja.gabriel em gmail.com (Joao Gabriel C. Laass) Date: Wed, 16 Jan 2008 16:08:33 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Tecn=F3logo_em_an=E1lise_e_desenvolv?= =?iso-8859-1?q?imento_de_sistemas=2E=2E=2E_quero_a_opini=E3o_de_vo?= =?iso-8859-1?q?c=EAs?= Message-ID: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> Boa tarde pessoal. Estou enviando esse e-mail para ouvir a opinião de vocês... esse mês eu fui aprovado no CEFET-ES* para o curso "tecnólogo" em "Análise e Desenvolvimento de Sistemas" (vulgo Sistemas de Informação)... e estou um pouco confuso... A um tempo atrás eu fui em uma palestra na qual o instrutor citou as diferenças entre Ciência da Computação e Sistemas de Informação... e em certa parte da palestra ele disse que no mercado, tirando o momento da contratação (em que Ciência da Compt. parece levar vantagem sobre Sistemas de Informação) ambas as áreas se interceptam e um pode fazer o trabalho do outro... Gostaria de saber os prós e contras sobre o curso que irei cursar (aviso: continuarei a tentar passar em Ciência da Computação pela UFES)... *CEFET-ES pra quem não sabe, tem fama de dar uma boa formação em cursos técnicos, tecnólogos e superiores (ensino médio já foi o tempo que era TOP) e também tem fama de que os professores sugam os alunos (o que eu acho correto para uma boa formação). -- Um abraço, João Gabriel C. Laass From nferraz em gmail.com Wed Jan 16 10:36:57 2008 From: nferraz em gmail.com (Nelson Ferraz) Date: Wed, 16 Jan 2008 18:36:57 +0000 Subject: [Cascavel-pm] Res: Res: Duvida campo numerico In-Reply-To: <219839.12562.qm@web31303.mail.mud.yahoo.com> References: <219839.12562.qm@web31303.mail.mud.yahoo.com> Message-ID: <604cec170801161036k13043761j6f6c444160dc6900@mail.gmail.com> > Desculpem esqueci de mencionar se colocar o defined.. dai da certo..:/ > alguem pode explicar?? perldoc -f defined From ptfzs em yahoo.com.br Wed Jan 16 10:39:45 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Wed, 16 Jan 2008 10:39:45 -0800 (PST) Subject: [Cascavel-pm] Res: Res: Res: Res: Duvida campo numerico Message-ID: <608295.53524.qm@web31302.mail.mud.yahoo.com> Resumindo :) eu posso usar defined entao?? :) Obrigada ----- Mensagem original ---- De: eden Para: Cascavel Perl Mongers Enviadas: Quarta-feira, 16 de Janeiro de 2008 17:10:59 Assunto: Re: [Cascavel-pm] Res: Res: Res: Duvida campo numerico 2008/1/16 Daniel (R) Antunes : > > > Td que é diferente de zero é "true" (verdadeiro) e o zero é "false" > (falso). na verdade, os valores 0, '' (string vazia) e undef avaliam como falso em contexto booleano, todos os outros valores são verdadeiros. > Qdo vc utiliza o defined a análise feita é se a variável está > "definida", ou seja; não é avaliado o seu valor. O valor é avaliado sim, a função defined() indica se o valor contido na variável é undef. O comportamento que você mencionou ocorre com a função exists() que só se aplica a chaves de hashes. > if ($teste) não é uma condição verdadeira pois o valor de $teste é 0 (falso) > if (defined $teste) é uma condição verdadeira pois o retorno da avaliação da > expressão é 1 (verdadeiro) Depois da sessão de chatisse... Agora sim, eu concordo, é isso mesmo... :) -- edenc.vox.com _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/491b71a4/attachment.html From acid06 em gmail.com Wed Jan 16 10:58:31 2008 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Wed, 16 Jan 2008 16:58:31 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Tecn=F3logo_em_an=E1lise_e_desenvolv?= =?iso-8859-1?q?imento_de_sistemas=2E=2E=2E_quero_a_opini=E3o_de_vo?= =?iso-8859-1?q?c=EAs?= In-Reply-To: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> References: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> Message-ID: <9a08c9b40801161058v5a59bfa0g80cce71b188550f7@mail.gmail.com> 2008/1/16 Joao Gabriel C. Laass : > A um tempo atrás eu fui em uma palestra na qual o instrutor citou as > diferenças entre Ciência da Computação e Sistemas de Informação... e > em certa parte da palestra ele disse que no mercado, tirando o momento > da contratação (em que Ciência da Compt. parece levar vantagem sobre > Sistemas de Informação) ambas as áreas se interceptam e um pode fazer > o trabalho do outro... Olá, Em geral, eu recomendo contra o ingresso em cursos de nível"tecnólogo". Eles são considerados como nível superior e categorizados de maneira equivalente aos bacharelados somente por pressão de algumas universidades. Na realidade, o intuito da criação dos mesmos era funcionar como um nível intermediário entre um nível técnico e um bacharel e, originalmente, nem era possível fazer pós-graduação depois (agora é, novamente, por pressão). Quanto ao ensino, bem, a idéia desses cursos é uma abordagem mais específica ao invés de generalista. É comum algumas universidades possuírem disciplinas específicas para "Java" ou ".NET" nesses cursos, enquanto um bacharelado teria uma disciplina de "Linguagens de Programação". Note que tem um erro no que você disse. Tecnólogo em Análise de Sistemas é um título diferente de um Bacharel em Sistemas de Informação. Além disso, se o que você gosta mesmo é de desafios técnicos, desenvolver algoritmos, etc, eu não recomendaria nem mesmo o Bacharelado em Sistemas de Informação mas, sim, um Bacharelado em Ciência da Computação. O curso de Sistemas de Informação possuí um foco também em aspectos gerenciais e administrativos, enquanto num curso de Ciência da Computação, em geral, esse foco é reduzido ou não existe. Por outro lado, é melhor fazer um curso ligeiramente simplificado em uma boa instituição de ensino do que um que seria supostamente melhor, em uma instituição de ensino inferior (essas particulares meia-boca que brotam a cada dia). Aqui em BH é comum (principalmente para alunos de Engenharias em geral) começar a estudar no CEFET e depois pedir transferência para a UFMG. Com isso, você consegue evitar o vestibular e no final acaba com o mesmo diploma e nível de aprendizado que todo mundo. Não sei se isso é possível na UFES. -Nilson Santos F. Jr. From danielrantunes em yahoo.com.br Wed Jan 16 12:15:48 2008 From: danielrantunes em yahoo.com.br (=?iso-8859-1?Q?Daniel_=AE_Antunes?=) Date: Wed, 16 Jan 2008 12:15:48 -0800 (PST) Subject: [Cascavel-pm] Res: Res: Res: Res: Duvida campo numerico Message-ID: <260917.91666.qm@web36905.mail.mud.yahoo.com> Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080116/9aa5094c/attachment.html -------------- Próxima Parte ---------- Sim. A diferença é que mesmo o valor da variável sendo 0 (o que faz atualmente seu if bater sempre no else), o status dela é defined. Sent from my iPhone On 16/01/2008, at 16:39, Patty Silva wrote: Resumindo :) eu posso usar defined entao?? :) Obrigada ----- Mensagem original ---- De: eden Para: Cascavel Perl Mongers Enviadas: Quarta-feira, 16 de Janeiro de 2008 17:10:59 Assunto: Re: [Cascavel-pm] Res: Res: Res: Duvida campo numerico 2008/1/16 Daniel (R) Antunes : > > > Td que é diferente de zero é "true" (verdadeiro) e o zero é "false" > (falso). na verdade, os valores 0, '' (string vazia) e undef avaliam como falso em contexto booleano, todos os outros valores são verdadeiros. > Qdo vc utiliza o defined a análise feita é se a variável está > "definida", ou seja; não é avaliado o seu valor. O valor é avaliado sim, a função defined() indica se o valor contido na variável é undef. O comportamento que você mencionou ocorre com a função exists() que só se aplica a chaves de hashes. > if ($teste) não é uma condição verdadeira pois o valor de $teste é 0 (falso) > if (defined $teste) é uma condição verdadeira pois o retorno da avaliação da > expressão é 1 (verdadeiro) Depois da sessão de chatisse... Agora sim, eu concordo, é isso mesmo... :) -- edenc.vox.com _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! _______________________________________________ Cascavel-pm mailing list Cascavel-pm em pm.org http://mail.pm.org/mailman/listinfo/cascavel-pm Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ From rafamv1 em ig.com.br Thu Jan 17 04:44:19 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Thu, 17 Jan 2008 09:44:19 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Intersec=E7=E3o_e_diferen=E7a_entre_?= =?iso-8859-1?q?arrays?= Message-ID: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> Bom dia, pessoal. Eu estava pesquisando aqui sobre intersecção e diferença entre arrays, mas não consegui encontrar nenhum link que "respondesse" às minhas dúvidas. Alguém ai pode me enviar algum link sobre o assunto...? -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080117/6d2740a5/attachment.html From luismottacampos em yahoo.co.uk Thu Jan 17 04:53:21 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Thu, 17 Jan 2008 13:53:21 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> Message-ID: <478F4FC1.6060504@yahoo.co.uk> Rafael Lebrao Martins wrote: > Olá. Não é uma "mensagem velha voltando à vida".. > A minha dúvida anterior era quanto à remoção de diretórios cheios.. > Agora estou querendo remover todos os arquivos de um ou mais diretórios.. Posso saber qual é a diferença, por favor? O que é um "diretório", se não um arquivo especial? Putamplexos! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From luismottacampos em yahoo.co.uk Thu Jan 17 04:55:45 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Thu, 17 Jan 2008 13:55:45 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?m=E9todos_de_acesso_mais_sofisticado?= =?iso-8859-1?q?s_=28era=3A_acess=F3rios_de_altera=E7=E3o_mais_sofisticado?= =?iso-8859-1?q?s=29?= In-Reply-To: <856979.15079.qm@web30809.mail.mud.yahoo.com> References: <856979.15079.qm@web30809.mail.mud.yahoo.com> Message-ID: <478F5051.3000101@yahoo.co.uk> Alceu R. de Freitas Jr. wrote: > Oi Champs, > > --- Luis Motta Campos > escreveu: > > [tutorial de Class::Accessor] > >> __END__ >> >> Espero que isso ajude. >> Se você precisar de mais ajuda, por favor não se >> sinta constrangido - é >> muito difícil eu ter uma oportunidade de ajudar >> você, > > Deve ser a diferença de fuso... ou então que o nível > da lista melhorou! Ou os dois!! > > Acho que você está perdendo a primeira posição de > envio de respostas mais rápidas (temos essa > competição?). Ano passado você ganhou na quantidade, > mas do jeito que as coisas andam, você vai precisar de > um BOT para se manter no páreo! :-) > > Obrigado pela ajuda. A diferença de fuso não ajuda nada, e agora eu respondo no IRC e nas listas da Europa, também... ;) e traduzir do holandês não está fácil, ainda. De qualquer forma, o importante é ter uma resposta, não a mais rápida. Eu fico muito contente de ver respostas para as perguntas antes que eu possa responder - paga cada minuto do meu tempo investindo nisso nos últimos anos, ver mais gente se dedicando ao suporte. :) Putamplexos, felizes e em segundo (ou terceiro?) lugar!! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From rafamv1 em ig.com.br Thu Jan 17 04:58:18 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Thu, 17 Jan 2008 09:58:18 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <478F4FC1.6060504@yahoo.co.uk> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> <478F4FC1.6060504@yahoo.co.uk> Message-ID: <3e759d2b0801170458k6d518735uae6f93da73b1b81f@mail.gmail.com> Que seja então, Luis!!!! Em 17/01/08, Luis Motta Campos escreveu: > > Rafael Lebrao Martins wrote: > > Olá. Não é uma "mensagem velha voltando à vida".. > > A minha dúvida anterior era quanto à remoção de diretórios cheios.. > > Agora estou querendo remover todos os arquivos de um ou mais > diretórios.. > > Posso saber qual é a diferença, por favor? > O que é um "diretório", se não um arquivo especial? > > Putamplexos! > -- > Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, > Perl fanatic evangelist, and amateur {cook, photographer} > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080117/02372287/attachment.html From luismottacampos em yahoo.co.uk Thu Jan 17 05:02:48 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Thu, 17 Jan 2008 14:02:48 +0100 Subject: [Cascavel-pm] Res: Res: Res: Res: Duvida campo numerico In-Reply-To: <608295.53524.qm@web31302.mail.mud.yahoo.com> References: <608295.53524.qm@web31302.mail.mud.yahoo.com> Message-ID: <478F51F8.702@yahoo.co.uk> Patty Silva wrote: > Resumindo :) > eu posso usar defined entao?? :) Patty, na minha opinião, você deveria tentar programar Java... Não teste valores em condições se você não sabe o que está fazendo. Vai dar merda, mais cedo ou mais tarde. Entenda o que é "undef" (a única constante do Perl, fora os literais), e o que é falso e verdadeiro. Tenho certeza de que alguém aqui pode te apontar para uma tradução razoável do "perlintro", o manual de Perl para iniciantes. Você já deveria estar programando melhor, já faz bastante tempo que você fala aqui, mas as tuas perguntas não sobem de nível. A gente responde e você não pensa, não aprende. Por favor, preste mais atenção. Você está jogando a tua vida (e o nosso tempo) fora. Não faz isso, não é bom nem para você nem para a gente. Putamplexos preocupados com o teu desenvolvimento profissional. Ou com a falta dele, para ser mais exato. -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From luismottacampos em yahoo.co.uk Thu Jan 17 05:03:57 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Thu, 17 Jan 2008 14:03:57 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <3e759d2b0801170458k6d518735uae6f93da73b1b81f@mail.gmail.com> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> <478F4FC1.6060504@yahoo.co.uk> <3e759d2b0801170458k6d518735uae6f93da73b1b81f@mail.gmail.com> Message-ID: <478F523D.3050705@yahoo.co.uk> Rafael Lebrao Martins wrote: > Que seja então, Luis!!!! Bom, se um "diretório" é apenas um arquivo, acho que a gente pode aplicar mais ou menos as mesmas técnicas... ;) e agora já dá para aproveitar o programa anterior, resolver isso mais depressa e tomar mais um gole de café. :) Putamplexos! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From rafamv1 em ig.com.br Thu Jan 17 05:10:59 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Thu, 17 Jan 2008 10:10:59 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Apagar_arquivos_em_diret=F3rios=2E?= In-Reply-To: <478F523D.3050705@yahoo.co.uk> References: <3e759d2b0801151154k64b85727qe6f58f0cff655703@mail.gmail.com> <726229b50801151226y7f992a39qde5c4e82ed9c173c@mail.gmail.com> <3e759d2b0801151235g31ac85cckdb10e3661130bc80@mail.gmail.com> <478F4FC1.6060504@yahoo.co.uk> <3e759d2b0801170458k6d518735uae6f93da73b1b81f@mail.gmail.com> <478F523D.3050705@yahoo.co.uk> Message-ID: <3e759d2b0801170510v25f869e9i43c1dbdb5975d59b@mail.gmail.com> Luis, estou querendo saber mais sobre intersecção entre arrays... Não consegui encontrar nada que pudesse me ajudasse... Você poderia me passar algum link sobre esse assunto? 2008/1/17, Luis Motta Campos : > > Rafael Lebrao Martins wrote: > > Que seja então, Luis!!!! > > Bom, se um "diretório" é apenas um arquivo, acho que a gente pode > aplicar mais ou menos as mesmas técnicas... ;) e agora já dá para > aproveitar o programa anterior, resolver isso mais depressa e tomar mais > um gole de café. > > :) Putamplexos! > -- > Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, > Perl fanatic evangelist, and amateur {cook, photographer} > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080117/419adf8d/attachment.html From edencardim em gmail.com Thu Jan 17 05:18:12 2008 From: edencardim em gmail.com (eden) Date: Thu, 17 Jan 2008 10:18:12 -0300 Subject: [Cascavel-pm] =?utf-8?b?SW50ZXJzZWPDp8OjbyBlIGRpZmVyZW7Dp2EgZW50?= =?utf-8?q?re_arrays?= In-Reply-To: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> References: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> Message-ID: <3de55ead0801170518n338f3d6bobc7543e6207aa4f3@mail.gmail.com> 2008/1/17 Rafael Lebrao Martins : > Bom dia, pessoal. Eu estava pesquisando aqui sobre intersecção e diferença > entre arrays, mas não consegui encontrar nenhum link que "respondesse" às > minhas dúvidas. Alguém ai pode me enviar algum link sobre o assunto...? Você pode usar o módulo List::Compare ... Mas isso merece um golf: O problema é: assumindo que as seguintes variáveis estão inicializadas: @a1=1..5; @a2=3..7; problema 1: imprimir @a1 - @a2 com os itens separados por vírgula. vai resultar em "1, 2" problema 2: imprimir @a1 ? @a2 com os itens separados por vírgula. vai resultar em "3, 4, 5" Minhas soluções: diferença: @a1{@a1}=1; delete @a1{@a2}; print join ', ', keys %a1; intersecção: @a1{@a1}=1; print join ', ', grep { exists $a1{$_} } @a2; -- edenc.vox.com From luismottacampos em yahoo.co.uk Thu Jan 17 05:25:54 2008 From: luismottacampos em yahoo.co.uk (Luis Motta Campos) Date: Thu, 17 Jan 2008 14:25:54 +0100 Subject: [Cascavel-pm] =?iso-8859-1?q?Tecn=F3logo_em_an=E1lise_e_desenvolv?= =?iso-8859-1?q?imento_de_sistemas=2E=2E=2E_quero_a_opini=E3o_de_voc=EAs?= In-Reply-To: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> References: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> Message-ID: <478F5762.4080802@yahoo.co.uk> Joao Gabriel C. Laass wrote: > Boa tarde pessoal. > Estou enviando esse e-mail para ouvir a opinião de vocês... esse mês > eu fui aprovado no CEFET-ES* para o curso "tecnólogo" em "Análise e > Desenvolvimento de Sistemas" (vulgo Sistemas de Informação)... e > estou um pouco confuso... Bom, antes de mais nada, meus parabéns. > A um tempo atrás eu fui em uma palestra na qual o instrutor citou as > diferenças entre Ciência da Computação e Sistemas de Informação... e > em certa parte da palestra ele disse que no mercado, tirando o > momento da contratação (em que Ciência da Compt. parece levar > vantagem sobre Sistemas de Informação) ambas as áreas se interceptam > e um pode fazer o trabalho do outro... Bom, aqui tem uma verdade e uma mentira. Vamos tentar desenroscar as duas coisas: É sim verdade que os profissionais formados "Cientistas da Computação" e os profissionais formados "Tecnólogos em Sistemas de Informação" tem um conjunto de tarefas em comum (i.é, podem "fazer a mesma coisa"). O problema é que, para o tecnólogo, esse "subconjunto" comum representa algo como 80%-90% de todo o conhecimento que ele teve nos estudos dele. Para o cientista, isso não passa de 20%-30%. O problema é que a maior parte do mercado de IT do Brazil não entende nada de IT, e não faz idéia do motivo pelo qual temos duas "denominações" diferentes para o "mesmo curso" (eles acham). Assim, se o que importa para você é "trabalhar", qualquer um serve, e usualmente tecnologia é mais fácil de terminar. Por outro lado, se você quer fazer diferença, estudar Ciências da Computação pode pesar na sua carreira. Eu não estou dizendo que todo mundo que é (interessante|relevante) na área fez ou faz Ciências da Computação. Não é condição /sine/-/qua/-/non/ para conseguir bons empregos, e você vai fazer "essencialmente" a mesma coisa. É muito mais como comparar as piruetas de um atleta olímpico com as piruetas de uma criança de 5 anos - o atleta olímpico teve muito mais preparo e pode dar piruetas mais bonitas... :) > Gostaria de saber os prós e contras sobre o curso que irei cursar > (aviso: continuarei a tentar passar em Ciência da Computação pela > UFES)... Bom, acho que você consegue listar prós e contras por sua conta. O que eu quero que você preste atenção é se o curso que você escolher te oferece: 1. Mais horas de prática de programação; 2. C, Lisp, Perl, Ruby, Python, Eiffel, Smalltalk; 3. Aprendizado prático e teórico nos três paradigmas de programação mais antigos e mais usados (Funcional, OO, e Eventos); 4. Aulas de Engenharia de Software; 5. Aulas de gestão de projetos; 6. Cursos completos de Compiladores e estudo de Gramáticas Regulares - requisito para ser bom é terminar o semestre com um compilador básico de pascal, por exemplo. 6. Contato com sistemas operacionais "unix-like" (linux, solaris, aix, hpux, irix, minix, bsd, freebsd, entre outros) 7. Contato com tecnologias "abertas" (padrões públicos, usados por muitas empresas e fornecedores diferentes). Quanto mais ítens desta lista, mais perto do currículo que eu considero "ideal" para um bom profissional, não importa como você chame o teu curso. Bom, estes são os meus "dois centavos" ;) tenho certeza de que outras pessoas vão acrescentar mais ítens à lista. Putamplexos! -- Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer, Perl fanatic evangelist, and amateur {cook, photographer} From nferraz em gmail.com Thu Jan 17 05:59:44 2008 From: nferraz em gmail.com (Nelson Ferraz) Date: Thu, 17 Jan 2008 13:59:44 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Intersec=E7=E3o_e_diferen=E7a_entre_?= =?iso-8859-1?q?arrays?= In-Reply-To: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> References: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> Message-ID: <604cec170801170559l3cee435cmfcc929e945664a50@mail.gmail.com> > Bom dia, pessoal. Eu estava pesquisando aqui sobre intersecção e diferença > entre arrays, mas não consegui encontrar nenhum link que "respondesse" às > minhas dúvidas. Alguém ai pode me enviar algum link sobre o assunto...? http://www.perl.org.br/bin/view/Artigos/ComoLidarComConjuntos From jaja.gabriel em gmail.com Thu Jan 17 05:48:02 2008 From: jaja.gabriel em gmail.com (Joao Gabriel C. Laass) Date: Thu, 17 Jan 2008 11:48:02 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Tecn=F3logo_em_an=E1lise_e_desenvolv?= =?iso-8859-1?q?imento_de_sistemas=2E=2E=2E_quero_a_opini=E3o_de_vo?= =?iso-8859-1?q?c=EAs?= In-Reply-To: <478F5762.4080802@yahoo.co.uk> References: <8ff2963a0801161008k4e27784due403847c28e569d6@mail.gmail.com> <478F5762.4080802@yahoo.co.uk> Message-ID: <8ff2963a0801170548i300d9420gbfb2117396808c10@mail.gmail.com> Nilson Santos F. Jr... > Aqui em BH é comum (principalmente para alunos de Engenharias em > geral) começar a estudar no CEFET e depois pedir transferência para a > UFMG. Com isso, você consegue evitar o vestibular e no final acaba com > o mesmo diploma e nível de aprendizado que todo mundo. Não sei se isso > é possível na UFES. Se aqui for possível, eu tentarei... já é meio caminho andado, já que aqui no Espírito Santo nós só temos uma universidade federal, logo, a concorrência é bem acirrada. Luis Motta Campos... > Bom, antes de mais nada, meus parabéns. valeu!! Luis Motta Campos... > O problema é que, para o tecnólogo, esse "subconjunto" comum representa > algo como 80%-90% de todo o conhecimento que ele teve nos estudos dele. > Para o cientista, isso não passa de 20%-30%. Isso deve ser levado em consideração... mas como eu disse, ainda tentarei ir p/ Ciência da Computação. Minha intriga era saber como anda o mercado de trabalho p/ essa formação do CEFET-ES e, como o Luis disse, o mercado "não sabe qual é um, qual é outro"... Valeu pelas dicas. João Gabriel C. Laass From rafamv1 em ig.com.br Thu Jan 17 06:22:29 2008 From: rafamv1 em ig.com.br (Rafael Lebrao Martins) Date: Thu, 17 Jan 2008 11:22:29 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Intersec=E7=E3o_e_diferen=E7a_entre_?= =?iso-8859-1?q?arrays?= In-Reply-To: <604cec170801170559l3cee435cmfcc929e945664a50@mail.gmail.com> References: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> <604cec170801170559l3cee435cmfcc929e945664a50@mail.gmail.com> Message-ID: <3e759d2b0801170622n5d623c31y1bf5edf0f25657e0@mail.gmail.com> Eu tentei encontrar a diferença no código abaixo: @file{@file}=1; delete @file{@users}; my @newlist = join ("\n", keys %file); print "@users"; -> imprime os nomes que eu digitei.. print "@file"; -> imprime os nomes que estão no arquivo... Mas: print "@newlist"; -> não imprime a diferença entre os dois.. Não imprime nada.. Dessa forma, deveria imprimir a diferença em "@newlist", ou estou fazendo errado? Em 17/01/08, Nelson Ferraz escreveu: > > > Bom dia, pessoal. Eu estava pesquisando aqui sobre intersecção e > diferença > > entre arrays, mas não consegui encontrar nenhum link que "respondesse" > às > > minhas dúvidas. Alguém ai pode me enviar algum link sobre o assunto...? > > http://www.perl.org.br/bin/view/Artigos/ComoLidarComConjuntos > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080117/2fc3890e/attachment.html From ptfzs em yahoo.com.br Thu Jan 17 07:03:38 2008 From: ptfzs em yahoo.com.br (Patty Silva) Date: Thu, 17 Jan 2008 07:03:38 -0800 (PST) Subject: [Cascavel-pm] Ler Arquivo bin Message-ID: <255489.86622.qm@web31307.mail.mud.yahoo.com> Pessoal.. gostaria de alguma sugestao de vcs... Estou lendo um arquivo em binario e lendo byte a byte.. preciso recuperar trechos do programa: ex: while(my $arquivos = <*.bin> ) { open(FH, "<$arquivos") or die("Unable to open file"); while((my $caracter = getc(FH)) ne "") { print "CARACTER $caracter\n"; } } Obs: nao sei se tem metodos melhores.. mas q encontrei foi esse porem no arquivo tenho varias coisas e gostaria de recuperar os dados q estao entre os caracteres ^D^C^C e ^A^A^C tudo q tiver entre isso preciso gravar.. o pq ler byte a byte.. para identificar a seguencia pq ex ^A pode estar na linha de cima e ^A^C na linha de baixo e nao basta ler linha a linha Obrigada Pessoal :D Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20080117/1eb70314/attachment-0001.html From wendelscardua em gmail.com Thu Jan 17 07:16:08 2008 From: wendelscardua em gmail.com (Wendel Scardua) Date: Thu, 17 Jan 2008 13:16:08 -0200 Subject: [Cascavel-pm] =?utf-8?b?SW50ZXJzZWPDp8OjbyBlIGRpZmVyZW7Dp2EgZW50?= =?utf-8?q?re_arrays?= In-Reply-To: <3de55ead0801170518n338f3d6bobc7543e6207aa4f3@mail.gmail.com> References: <3e759d2b0801170444j430be14bt31b09947e990d04e@mail.gmail.com> <3de55ead0801170518n338f3d6bobc7543e6207aa4f3@mail.gmail.com> Message-ID: <726229b50801170716k6b083c3cy1ab80b9e0859e2ba@mail.gmail.com> Continuando o golf... (ainda não me conformo de não conseguir nada melhor que 45 no codegolf.com/choose , mas tudo bem, rs) * @a1 - @a2 , 46 chars: @x{@a2}=(1)x em a2;print join', ',grep!$x{$_}, em a1 * @a1 inter @a2, 45 chars: @x{@a1}=(1)x em a1;print join', ',grep$x{$_}, em a2 []s Wendel 2008/1/17 eden : > Você pode usar o módulo List::Compare ... Mas isso merece um golf: > > O problema é: > > assumindo que as seguintes variáveis estão inicializadas: > > @a1=1..5; > @a2=3..7; > > problema 1: imprimir @a1 - @a2 com os itens separados por vírgula. vai > resultar em "1, 2" > problema 2: imprimir @a1 ? @a2 com os iten