gildot

Topo
Sobre
FAQ
Tópicos
Autores
Preferências
Artigos
Sondagens
Propor artigo


8/3
gildicas
9/30
jobs
10/9
perguntas
10/25
press

 
Perl
Contribuído por scorpio em 29-07-01 10:50
do departamento coding-perl-for-a-buck
Perl Artista da bola escreve "Gostava de saber que usos se dão ao Perl no mercado portugues (só na programação internet? outros?), e se actualmente os programadores de Perl são muito procurados, e se é uma linguagem na qual os programadores são bem pagos. E lá fora?
As mesmas perguntas para a linguagem C. Obrigado. "

Sysadm day! | yet another reboot  >

 

gildot Login
Login:

Password:

Referências
  • Artista da bola
  • Mais acerca Perl
  • Também por scorpio
  • Esta discussão foi arquivada. Não se pode acrescentar nenhum comentário.
    C/Perl (Pontos:2, Interessante)
    por toze em 29-07-01 11:53 GMT (#1)
    (Utilizador Info) http://mega.ist.utl.pt/~tozevv
    Como julgo o perl a coisa mais estranha já mais inventada e com pior legibilidade (a par do AWK) acho que não deveria ser utilizada para nada...
    Aquilo é porreiro para expressões regulares. Que são um sub-conjunto das gramáticas regulares.

    O C deve ser usado para Sistemas Operativos, cool hacking. Mas não para fazer Sistemas de Informação.

    Agora o que é usado depende da natureza do problema. Ou melhor, deveria depender. Infelizmente depende mais da experiência com as linguagens por parte do gestor de projecto. De C todos levamos uma grande dose na Universidade. Daí existir muito boa gente que não se dá ao trabalho de aprender coisas melhores para certos problemas. Não linguagens mas paradigmas. Tanto o C como o Perl são linguagens imperativas (o Perl é uma linguagem de Scripting, o que na minha opinião significa um subconjunto das referidas). Existem mais paradigmas porreiros (Eventos, Objectos, Contratos, Funcional e Lógica).


    Tó-Zé 'Senador'
    Re:C/Perl (Pontos:2, Interessante)
    por foxfire em 29-07-01 12:37 GMT (#2)
    (Utilizador Info)
    Creio que ja programei em quase tudo que ha para programar. Todas as lingugens tem algum ponto forte e algum ponto fraco. A questao e muito simples quando se tem muito trabalho para fazer e pouco tempo creio que o perl bate qualqer outra linguagem em pontos. Mas se o programa precisar de uma GUI entao o perl passa bastante para baixo.Alem que compilacao binaria e possivel mas longe de perfeita ai sem duvida que o C/C++ bate qualquer outra. Aonde recomendo a utilisacao do perl defenitiva e em servidores tanto em automatisacao de tarefas como em sites. ja que escreve se o ficheiro testa-se corigue-se e esta a andar. Em C escreve-se compila-se testa-se recompila-se debuga-se corrigue-se recompila-se etc ... Como eu detesto aqueles core dumps do C.
    Re:C/Perl (Pontos:2)
    por leitao em 29-07-01 21:56 GMT (#3)
    (Utilizador Info) http://linuxfreesite.com/~nunoleitao/
    Como eu detesto aqueles core dumps do C.

    Se calhar e' porque nao sabes o que fazer com eles -- eu acho-os muito uteis...

    % gdb executable core gdb> bt

    Regards,


    -- "Why waste negative entropy on comments, when you could use the same entropy to create bugs instead?" -- Steve Elias

    Re:C/Perl (Pontos:2, Informativo)
    por [WaR] em 30-07-01 1:17 GMT (#5)
    (Utilizador Info) http://war.GenHex.org/
    > Como julgo o perl a coisa mais estranha já mais inventada e com pior legibilidade (a par do AWK) acho que não deveria ser utilizada para nada...

    Quanto à legibilidade, depende unicamente de quem o programou. Isso acontece em qq linguagem. O obfuscated C contest vem-me à memoria...

    Obviamente q nunca precisaste de fazer um script para parsing de um output qq, ou alterar ficheiros de configuração de algo, ou milhares de outras tarefas usuais para qq admin de sistemas... ou fizeste em C++ ? :)

    Claro q tb nao acho q perl seja o ideal para fazer tudo, cada coisa no seu sítio. Mas se nao fosse o perl dormia ainda menos horas.

    Engraçado, reparei lá em cima q este script se chama comments.pl... Qual seria a vantagem de o fazer em C ou C++, ou java, ou... ? ;))

    -- [WaR]
    "making rumours true since 1994"
    Re:C/Perl (Pontos:1)
    por tfp em 30-07-01 9:39 GMT (#7)
    (Utilizador Info)
    Que linguagens sugeres então atendendo à variedade de problemas existentes ?

    obrigado

    Re:C/Perl (Pontos:1)
    por tfp em 30-07-01 10:14 GMT (#10)
    (Utilizador Info)
    Click, Click, Click, Click, Click... Click...

    ... (após 2500 clicks) ...

    Click... Click...

    "Chefinho!!! Venha ver a aplicação está feita!"

    PS: desculpa o sarcasmo mas não resisti :)


    Bastante Usado (Pontos:1)
    por pjrmoreira em 30-07-01 9:29 GMT (#6)
    (Utilizador Info)
    Apesar de não ter um experiência muito grande, posso-te dizer que o Perl a par do Java é a linguagem que mais crescimento apresenta. Estas duas LPs albergam quase a totalidade dos novos projectos que surgem na empresa onde trabalho. Obviamente que o C é sempre muito utilizado, e continuará a sê-lo pelo menos na próxima década.
    to perl or not to perl... (Pontos:1)
    por tfp em 30-07-01 10:01 GMT (#9)
    (Utilizador Info)
    Sem entrar em fundamentalismos...

    Uso já o perl à 3 anos, é a minha primeira linguagem (a segunda é o português)...

    Em que usei o Perl ?

    • Web Dev - CGIs e Mason;
    • XML Parsing;
    • Processamento de Dados (SGBDs, migrações, etc);
    • Interligação de Serviços (POP3, SMTP, NNTP, etc);
    • IPC;
    • um pouco de SNMP (estou a começar...);
    Porque uso o Perl e não outras linguagens?

    • CPAN - http://cpan.ip.pt - se tenho 15000 módulos que fazem tudo e mais alguma coisa para quê re-inventar a roda ?
    • gosto da sintaxe, do polimorfismo das vars e é rápido a implementar soluções...
    • documentação existente;
    • suporte;
    • politica das empresas por que tenho passado :)
    PS1: não vou discutir se esta é melhor que aquela pq estou-me literalmente nas tintas... por mim é perl e será perl até ter algo que me faça mudar (até agora... nada)...

    PS2: um grande abraço para o "grande mestre" que tanto fez por corrumper as mentes de umas pobres almas finalistas (na altura)... que continue a "envenenar" a U.Minho por muitos e muitos anos....

    Re:to perl or not to perl... (Pontos:2)
    por Karlus em 30-07-01 11:22 GMT (#11)
    (Utilizador Info) http://karlus.net
    Tas contratado... quando podes começar ? ;-)
    Re:to perl or not to perl... (Pontos:1)
    por tfp em 30-07-01 11:36 GMT (#12)
    (Utilizador Info)
    Logo q a karlus.net lance a IPO... :)
    Re:to perl or not to perl... (Pontos:2)
    por Karlus em 30-07-01 13:58 GMT (#14)
    (Utilizador Info) http://karlus.net
    Depois do crash bolsista da diedparsing.org nao me meto nisso. :-))
    Re:to perl or not to perl... (Pontos:1)
    por jpo em 30-07-01 14:24 GMT (#15)
    (Utilizador Info)
    O "grande mestre" também perlizou algumas pobres almas que vieram a este departamento tentar fazer mestrado. :)
    Quem passou pela sua cadeira "Processamento de Linguagem Natural" nunca mais foi o mesmo. Como era triste a vida sem expressões regulares (e Perl claro)! :)
    Re:to perl or not to perl... (Pontos:1)
    por scorpio em 30-07-01 21:20 GMT (#19)
    (Utilizador Info) http://gil.di.uminho.pt/~scorpio/
    PLN! Ora exactamente, no último ano, no último semestre, aqueles pipes para o prolog mastigar umas coisas e devolver qq coisa para se apresentar.
    Bons tempos, não tão distantes...
    misc... (Pontos:0, Interessante)
    por Anonimo Cobarde em 30-07-01 17:01 GMT (#16)

    awk pior em legibilidade? what the fuck? o awk é perfeitamente legivel: é semelhante ao C em syntax e nao tem ponteiros. quase que podia ser java :) De facto, o awk em si, nao tende a produzir expressoes complexas (mas podem-se arranjar)! O formato de um script em awk é "condicao accao". Accao é um bloco com statements-- esta é a parte parecida com C. A condicao, é constituida normalmente por expressoes regulares, mas pode ser outra expressao que avalie num valor falso (0) ou verdadeiro. Por exemplo, a minha linha de awk favorita, é a seguinte, que elimina linhas duplicadas, mesmo que nao estejam ordenadas:

    awk '!a[$0]++' files...
    Normalmente vêem-se coisas do estilo:
    awk '/pattern/{print substr($0, 4,5)}' files
    mas o que vem atras do bloco na verdade, pode ser qualquer coisa que se enfie num if.
    Como as expressoes regulares vêm nativas no awk, tem-se tendencia a usa-las (tal como no perl) e isso torna muitos dos scripts dificeis de ler (a parte das REs, pelo menos).

    Quanto ao perl, é muito generalista, muito porque tem sido hackado ao longo dos anos, a comportar uma quantidade incrivel de paradigmas e/ou funcionalidades. Muitas delas ficaram esquisitas... mas funcionam, enfim. Neste momento, pode-se fazer e programar em perl, quase como se quiser. Existem varias formas de condicionalismos (if (cond) {}, expr if cond; cond and expr ... ), varias formas de produzir ciclos, existem tres tipos de goto's (os "normais", a-la fortran, e funcionais, que entretanto acho qeu foram deprecated). Com o "use" ou "no" podem-se ter varios comportamento run-time. Por exemplo, o "use strict" (mais concretamente, o "use strict 'vars'") obriga a que as variaveis sejam pre-declaradas, como na maior parte das linguagens nao-scripting (C,pascal,java), com "no strict" ja existe auto-definicao por referenciacao (como em awk, tcl). O Python tem um metodo ligeiramente diferente (as variaveis sao auto-definidas *apenas* em statements de iniciacao), e nao me admirava se qualquer dia, ja houvesse um "use" para esse modo. Dos varios paradigmas mencionados em cima, pelo menos "objectos" e "eventos" sao suportados por perl. Objectos builtin, e eventos por um modulo (nao me lembro do nome, mas deve fazer match de /event/i concerteza :)). Na verdade, a unica coisa que nao deve ser possivel fazer em perl, é fugir aquela syntax, para quem nao gosta.

    Quanto aos usos, basta encontrar "o binario de perl mais proximo de si", e tem-se uma forma de resolver quase todos (para nao dizer mesmo todos) os tipos de problemas, ou desenhar quase todos (para nao... bla bla...) os tipos de solucoes.

    Contudo, admito que em grandes projectos (ou coisas que envolvam mais que um ou dois ficheiros de um modo geral), talvez perl nao seja a melhor solucao. O mecanismo de classes e/ou modulos é parecido com o de python (foi baseado no deste), mas é mais dificil de realizar (em consequencia, nao existem muito programadores medianos a escrever modulos (.pm) em perl) e está menos integrado na linguagem. O operador bless é tudo menos blessed, e nao se percebe a logica de como se chega aos dados criados por este (nas instancias) e aos metodos e as variaveis globais do modulo...

     

     

    [ Topo | FAQ | Editores | Contacto ]