Acme-PM-Barcelona
view release on metacpan or search on metacpan
lib/Acme/PM/Barcelona/12x5_ca.pod view on Meta::CPAN
Bà sicament perquè és el llenguatge de
programació que a mi més m'agrada. Hi ha gent
que en prefereix d'altres però, és clar,
hi ha d'haver gent per tot en aquest món.
I a mi, per què m'agrada tant?
=over 4
=item * és divertit d'utilitzar i aprendre'l
=item * hi ha molt de codi ja fet i disponible lliurement
=item * la comunitat de Perl és gran i està disposada a ajudar
=item * està disponible en molts més llocs del que us penseu
=item * hi puc fer coses que no podria amb d'altres llenguatges
=item * em permet fer les coses com m'agradin més
=item * m'ajuda a fer la feina
=back
=head3 Què són els Perl Mongers?
Perl Mongers és una mena associació internacional
de tots els grups d'usuaris de Perl.
Cada grup pot fer coses molt diferents del que fan els altres,
però en la majoria de casos es tracta de grups d'usuaris
d'un lloc determinat que es reuneixen periòdicament per
parlar de Perl i d'altres temes relacionats.
=head3 Barcelona.pm, els Perl Mongers de Barcelona
Creat a principis de l'any 2003 per en Timothy Chen Allen,
el grup de mongers de Barcelona es reuneix el darrer dijous
de cada mes.
De vegades, des del grup també s'organitzen festivals,
xerrades i cursos de Perl aprofitant el pas per Barcelona
d'alguns gurús de la comunitat internacional.
=head2 Quinieles
=head3 La sort és aleatòria
Un company dels mongers diu que ell creu que les quinieles són
tan aleatòries com la loteria, per tant fa una cosa com aquesta:
@resultat = ( 1, 'X', 2 );
foreach $fila ( 1 .. 14 ) {
print $fila, " ", $resultat[ int rand 3 ], "\n";
}
=head3 Però potser no volem que ho sigui
En canvi, la seva dona vol poder decidir quin resultat tindrÃ
el seu equip favorit. Aixà doncs, cal una llista de resultats
desitjats:
@resultat = ( 1, 'X', 2 );
%quiniela = (
# volem que l'equip de la fila 4 obtingui un 1
4 => 1,
# volem que l'equip de la fila 6 obtingui una X
6 => 'X',
);
foreach $fila ( 1 .. 14 ) {
if ( !exists $quiniela{$fila} ) {
$quiniela{$fila} = $resultat[ int rand 3 ];
}
print $fila, " ", $quiniela{$fila}, "\n";
}
=head2 CPAN
=head3 Comprehensive Perl Archive Network
El CPAN és un repositori enorme de codi i documentació posats a
l'abast de tothom per la comunitat de programadors de Perl d'arreu
del món.
Algunes dades:
=over 4
=item * es va posar en marxa el 26 d'octubre de 1995
=item * hi ha 7664 autors
=item * aquests autors han fet 16575 mòduls de Perl
=item * existeixen 241 rèpliques del CPAN
=item * l'espai ocupat a cada rèplica és de 6064 MB
=back
=head3 Com funciona?
Publicar codi al CPAN és molt senzill, tothom pot demanar un
compte al PAUSE, que és el servei que permet
fer la publicació; un cop aprovat, es poden registrar els mòduls
i publicar-los.
=head3 Els mòduls
Un mòdul és un fitxer de text que conté la definició d'un o més
paquets de Perl. Per exemple el paquet C<Acme::PM::Barcelona::Meeting>
defineix el codi que calcula quan serà la propera reunió dels mongers
de Barcelona. Aquest paquet es troba al fitxer següent dins del
directori de mòduls de Perl:
Acme/PM/Barcelona/Meeting.pm
=head3 Els paquets
lib/Acme/PM/Barcelona/12x5_ca.pod view on Meta::CPAN
generin I<warnings>, i no es demana que facin res en particular.
=back
=head3 Poesia 1
study, write, study,
do review (each word) if time.
close book. sleep? what's that?
=head3 Poesia 2
no less can I say;
require strict, close attention
while you ... write haiku
=head3 JAPH
=over 4
=item * Un JAPH es un programa Perl que treu per pantalla la frase
"Just another Perl hacker,".
=item * Normalment els JAPH són molt originals, o molt
obfuscats.
=back
=head3 JAPH 1
$_ = "wftedskaebjgdpjgidbsmnjgc";
tr/a-z/oh, turtleneck Phrase Jar!/; print;
=head3 JAPH 2
=for latex \scriptsize
$_=q;Barcelona Perl Mongers;,$/=y,gaudi,,,;map$,+=(split//)*(-1)**$|++
,(split)[.11_09,1.714];$.=''!~m~erce~;$"=y,catalunya,,,$;=y,rambles,,,
$*=$/^$.;$:=$.+length,$@=$***$**$/**$*%$:,$%=$/*$"-$*;print+chr($_<0xA
?$.."$[$_":m:^$.:?$..$_:$_)for($**$**$/*$",$"*$@+$**$/,$**$,,$***$,,$/
*$,,$;,$***$/,$,*$/,$.<<$,,$%-$*,$"+$/,$***$,,(($,*$*)**$*)-$/,$***$/,
$@+$/,$:-($/**$*),$.,$:+$"+$*,$.<<$*,$,**$/-$:-$,,exp$:/$,,$",$.,$"*$*
,$***$,,log$.,$.,-$/+$"*$,,$/+$"*$;,$.,++$@,$***($/&=$/+Barcelona_pm))
=head2 Mòduls poc corrents del CPAN
=head3 Lingua::Romana::Perligata
Perl in Latin.
use Lingua::Romana::Perligata;
adnota Illud Cribrum Eratothenis
maximum tum val inquementum tum biguttam tum stadium egresso scribe.
vestibulo perlegementum da meo maximo .
maximum tum novumversum egresso scribe.
da II tum maximum conscribementa meis listis.
dum damentum nexto listis decapitamentum fac sic
lista sic hoc tum nextum recidementum cis vannementa da listis.
next tum biguttam tum stadium tum nextum tum novumversum
scribe egresso.
cis
=head3 Don::Mendo
Modules for "La venganza de Don Mendo", Sir Mendo's revenge.
use Don::Mendo;
$don_mendo = Don::Mendo->new;
# Acts in the play are "jornadas"
$first_act = $don_mendo->jornadas(0);
# Print the whole act
$first_act->tell();
# Just the lines for the main character
print $first_act->lines_for_character('Mendo');
=head3 DateTime::Event::Klingon
Determine events of Klingon cultural significance.
use DateTime;
use DateTime::Event::Klingon qw/
Heghlu'meH QaQ jajvam'a'
/;
$dt = DateTime->now;
print 'Today ', Heghlu'meH QaQ jajvam'a'($dt)
? 'is' : 'is not',
" a good day to die!\n";
=head3 Acme::Code::Police
Enforce rigorous coding standards.
use Acme::Code::Police;
use strict;
print "Hello, world!\n";
=head3 Acme::Code::FreedomFighter
Defends our right to code in any style waiting for the right
moment to strike back at the evil oppressors.
use Acme::Code::FreedomFicghter;
use Acme::Code::Police;
print "Hello, world!\n";
=head3 Codi del mòdul Acme::Code::FreedomFighter
=for latex \tiny
package Acme::Code::FreedomFighter;
our $VERSION = '3.1416';
BEGIN {
( run in 1.277 second using v1.01-cache-2.11-cpan-302cb4679cc )