Principais Funcionalidades da Linguagem Perl
Quiz yourself by thinking what should be in
each of the black spaces below before clicking
on it to display the answer.
Help!
|
|
||||
---|---|---|---|---|---|
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;
}
🗑
|
Review the information in the table. When you are ready to quiz yourself you can hide individual columns or the entire table. Then you can click on the empty cells to reveal the answer. Try to recall what will be displayed before clicking the empty cell.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
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
Normal Size Small Size show me how
Created by:
Rogerio
Popular Languages sets