Busy. Please wait.
or

show password
Forgot Password?

Don't have an account?  Sign up 
or

Username is available taken
show password

why

Make sure to remember your password. If you forget it there is no way for StudyStack to send you a reset link. You would need to create a new account.

By signing up, I agree to StudyStack's Terms of Service and Privacy Policy.


Already a StudyStack user? Log In

Reset Password
Enter the associated with your account, and we'll email you a link to reset your password.

Remove ads
Don't know
Know
remaining cards
Save
0:01
To flip the current card, click it or press the Spacebar key.  To move the current card to one of the three colored boxes, click on the box.  You may also press the UP ARROW key to move the card to the "Know" box, the DOWN ARROW key to move the card to the "Don't know" box, or the RIGHT ARROW key to move the card to the Remaining box.  You may also click on the card displayed in any of the three boxes to bring that card back to the center.

Pass complete!

"Know" box contains:
Time elapsed:
Retries:
restart all cards




share
Embed Code - If you would like this activity on your web page, copy the script below and paste it into your web page.

  Normal Size     Small Size show me how

Linguagem Perl

Principais Funcionalidades da Linguagem Perl

QuestionAnswer
1 de Janeiro, 1987 Surgimento da Linguagem Perl com o Perl 1.000
5 de Junho, 1988 Lançamento do Perl 2.000 A nova versão tinha suporte à chamada recursiva de sub-rotinas, operadores 'wait' e 'sort', além de melhorias no funcionamento de expressões regulares.
18 de Outubro, 1989 Lançamento do Perl 3.000 Na versão 3.000 era possível trabalhar com data binária corretamente, tinha funções de 'pack' e 'unpack' em estruturas binárias. Sub-rotinas poderiam ser passadas por referência, e outras diversas funções foram adicionadas.
1 de Janeiro, 1991 Publicação do livro Programming Perl A primeira edição de Programming Perl por Larry Wall e Randal Schwartz é publicada por O'Reilly & Associates.
21 de Março, 1991 — 1 de Janeiro, 1993 Lançamentos de versões do Perl 4, e do MacPerl O Perl 4.000 foi acompanhado por uma série de lançamentos de manutenção, culminando no Perl 4.036. Durante esse período houve o lançamento do MacPerl 4.0.2, para Macintosh, progredindo até o MacPerl 4.1.0.
18 de Setembro, 1994 Lançamento do Perl 5.000 O muito antecipado Perl 5.000 foi revelado. Houve uma completa re-escrita da linguagem. Dentre suas novas características pode-se notar a inclusão de objetos, referências e módulos.
26 de Setembro, 1995 CPAN (Comprehensive Perl Archive Network) Como consequência do suporte a módulos, houve o estabelecimento da CPAN como um repositório para módulos de Perl. Hoje abrigando mais de 24 mil módulos para várias finalidades.
5 de Maio, 1997 — 22 de Junho, 1998 Lançamentos do Perl 5.004 e 5.005 A versão 5.004 entre outras coisas trouxe a inclusão do módulo CGI.pm, enquanto a versão 5.005 incluiu mais melhoras no funcionamento do regex, além do suporte a novos sistemas operacionais.
1 de Janeiro, 2000 Início do planejamento do Perl 6 Larry Wall fez um pedido de sugestões à comunidade. Tal processo gerou um conjunto de documentos (361RFC) que foram então utilizados para guiar o desenvolvimento do Perl 6.
22 de Março, 2000 Lançamento do Perl 5.6 Nessa versão houve a inclusão de suporte a sistemas 64-bit e a arquivos maiores, além da inclusão da palavra chave "our".
1 de Janeiro, 2001 Surgimento dos documentos 'Apocalypses' do Perl 6 Tais documentos resumiam os pedidos de sugestões à comunidade, além de apresentarem o design da próxima geração de Perl.
8 de Junho, 2002 Lançamento do Perl 5.8 O Perl 5.8, entre outras coisas, melhorou o suporte a unicode, adicionou uma nova implementação de thread, e adicionou mais módulos.
1 de Janeiro, 2004 Documentos 'Synopses' em construção Tais documentos originalmente resumiriam os documentos 'Apocalypses', no entanto acabaram se tornando a especificação da linguagem do Perl 6.
1 de Fevereiro, 2005 — 1 de Janeiro, 2006 Desenvolvimento do Pugs Audrey Tang começou a desenvolver o Pugs, interpretador para o Perl 6, escrito na linguagem de programação Haskell. No entanto, em 2006 o desenvolvimento acabou sendo deixado de lado por tempo indefinido.
1 de Janeiro, 2007 Início da construção do Rakudo Perl Uma outra implementação de Perl 6 surgiu, conhecida como Rakudo Perl. Continuou obtendo atualizações mensais e hoje em dia é a mais completa implementação de Perl 6.
18 de Dezembro, 2007 Lançamento do Perl 5.10.0 A versão 5.10.0 foi lançada no aniversário de 20 anos da primeira versão de Perl. Incluia, entre outras coisas, declarações com switch e atualizações de expressões regulares.
2 de Setembro, 2009 Lançamento do Perl 5.11.0 Com a nova versão surgiu a proposta de atualizações mensais sobre a mesma, com o intuito de evitar bugs e melhorar a velocidade do desenvolvimento, também melhorando o planejamento em longo prazo do Perl 5.
12 de Abril, 2010 Lançamento do Perl 5.12.0 Em 2010 houve o lançamento da versão 5.12, que trouxe o operador Yada Yada, estruturas implícitas, suporte a DTrace e Unicode 5.2.
4 de Maio, 2011 — 20 de Maio, 2012 Lançamento das versões 5.14 e 5.16 Nos anos de 2011 e 2012 as versões 5.14 e 5.16 foram desenvolvidas, esta última tendo como característica principal a possibilidade de emular qualquer versão anterior do Perl, rodando scripts mais antigos que seriam n
Significado Perl significa "Practical Extraction and Report Language"
Paradigma Multiparadigma: funcional, imperativo, Orientação a objetos, reflexivo, estruturado, genérico
Estilo de tipagem Dinâmica
Compilada ou Interpretada Interpretada
Tipos de dados Escalar, Vetor (array), Hash (vetor associativo), Handle de um arquivo e Sub-rotinas.
Declaração Escalar $num $joe $pointer
Declaração Array @v @list @variable
Declaração Hash %people %x %this_is_a_hash
Programando em Perl #!/usr/bin/perl print "Olá, Mundo!\n";
Comentário Comentários podem ser inseridos no programa com o simbolo #, e tudo que estiver depois do # até o final da linha é ignorado (com exceção da primeira linha) a unica forma de realizar comentários por varias linhas é usando um # por linha.
Operação de soma $a = 1 + 2; # Soma 1 em 2 e armazena o resultado em $a
Operação de subtração $a = 3 - 4; # Subtrai 4 de 3 e armazena o resultado em $a
Operação de Multiplicação $a = 5 * 6; # Multiplica 5 por 6
Operação de Divisão $a = 7 / 8; # Divide 7 por 8 e obtem 0,875
Operação de Potenciação $a = 9 ** 10; # Eleva nove a décima potência
Operação de Resto $a = 5 % 2; # Armazena em $a o resto da divisão de 5 por 2
Operação de Incremento ++$a; # Inclementa $a e depois retorna $a++; # Retorna $a e depois inclementa
Operação de Decremento --$a; # Decrementa $a e depois retorna $a--; # Retorna $a e depois decrementa
Operações de Strings $a = $b . $c; # Concatena $b com $c $a = $b x $c; # $b é repetida $c vezes
Atribuição $a = $b; # Coloca em $a o conteúdo de $b $a += $b; # Soma o valor de $b ao valor de $a $a -= $b; # Subtrai o valor de $b do valor de $a $a .= $b; # Concatena $b a $a
Para adicionar um novo elemento no array push(@frutas, "abacaxi");
Transforma uma variável array em uma variável escalar $f = @frutas;
Escopo das variáveis $var = "value"; # Global my $var = "value"; # Local
Condicional if ( condition ) { ... } elsif ( other condition ) { ... } else { ... }
Versão negada unless ( condition ) { ... }
While while ( condition ) { ... }
versão negada until ( condition ) { ... }
For for ($i = 0; $i <= $max; $i++) { ... }
Foreach foreach my $key (keys %hash) { print "The value of $key is $hash{$key}\n"; }
Operadores Numericos == Igualdade ! = Desigualdade < Menor que > Maior que < = Menor ou igual > = Maior ou igual
Operadores de String eq Igualdade ne Desigualdade lt Menor que gt Maior que le Menor ou igual ge Maior ou igual
Operadores Lógicos && E | | Ou ! Não
Operadores Diversos = Atribuição . Concatenação x Multiplicação .. Faixa de operador ( cria uma lista de números )
Expressões regulares simples if (/foo/) { ... } # Verdadeiro se $_ contém "foo" if ($a =~ /foo/) { ... } # Verdadeiro se $a contém "foo"
Sub-Rotina sub logger { my $logmessage = shift; open my $logfile, ">>", "my.log" or die "não foi possível abrir my.log: $!"; print $logfile $logmessage; }
Created by: Rogerio