Em 29 de maio de 2011 22:50, Daniel de Oliveira Mantovani < [email protected]> escreveu:
> 2011/5/29 Stanislaw Pusep <[email protected]>: > > Falando em programação funcional e extrapolando o tópico, alguém tem uma > boa > > referência focada em Perl? > > Higher-Order Perl Transforming Programs with Programs - Morgan Kaufmann > É de bom tom indicar o link com o material informado (se ele tiver), neste caso o livro está disponível legalmente na internet - http://hop.perl.plover.com/ > > > Mal consigo compreender reduce() do List::Util :( > > > > ABS() > > > > > > > > 2011/5/29 Tiago Peczenyj <[email protected]> > >> > >> A melhor analogia a subrotina grep do perl é o comando grep no unix. > >> > >> $ grep 'condição' arquivo > >> > >> e o grep imprime na stdout as linhas do arquivo que satisfazem a > condição. > >> > >> Agora o map é engraçado pois ele não tem equivalente no mundo shell, > >> mas sim no mundo de programação funcional, acredito que ja foi muito > >> explorado aqui. > >> > >> 2011/5/29 Satoshi Hayazaki <[email protected]>: > >> > > >> > > >> > 2011/5/29 Renato Santos <[email protected]> > >> >> > >> >> O map gera uma nova lista com o resultado que você retornou > >> >> (percorrendo > >> >> cada item da[s] lista[s] que você passou) > >> >> e o grep retorna o conteudo original dependendo do resultando que > você > >> >> retornou no código para cada um dos item[s]. > >> >> Look this: > >> >> @quatroZeros = map { 0 } qw / a b c d/; > >> >> @vazio = grep { 0 } qw / a b c d/; > >> >> ---------------------- > >> >> @quatroUm = map { 1 } qw / a b c d/; > >> >> @abc_e_d = grep { 1 } qw / a b c d/; > >> >> > >> > > >> > > >> > Adorei esse exemplo. Eu que não conhecia nenhum dos dois muito bem (só > >> > de > >> > ouvir falar, mas nunca tinha usado) consegui entender perfeitamente > com > >> > isso. RenatoCRON++ > >> > =begin disclaimer > >> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > >> > SaoPaulo-pm mailing list: [email protected] > >> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > >> > =end disclaimer > >> > > >> > > >> > >> > >> > >> -- > >> Tiago B. Peczenyj > >> Linux User #405772 > >> > >> http://pacman.blog.br > >> =begin disclaimer > >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > >> SaoPaulo-pm mailing list: [email protected] > >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > >> =end disclaimer > > > > > > =begin disclaimer > > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > > SaoPaulo-pm mailing list: [email protected] > > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > > =end disclaimer > > > > > > > > -- > "If you’ve never written anything thoughtful, then you’ve never had > any difficult, important, or interesting thoughts. That’s the secret: > people who don’t write, are people who don’t think." > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > -- "o animal satisfeito dorme". - Guimarães Rosa
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
