Skip to content

Swiss Perl Workshop 2013 ...

Gestern war ich auf dem Swiss Perl Workshop 2013 (der erste seiner Art). Neben der Tatsache, dass ich einen der brillantesten Redner erleben durfte, den ich je gehört habe, nämlich Damian Conway, konnte ich mich auch kurz mit Tobi Oetiker unterhalten. Schön an Perl ist, dass selbst die prominenten Mitglieder der Community so herrlich "normal" sind. Nicht falsch verstehen, es sind aussergewöhnliche Menschen, aber dafür ohne Dünkel irgendeiner Form.

Natürlich habe ich auch viel gelernt.

Etwas, was an mir bisher völlig vorbei gelaufen ist, ist Perlbrew. Perlbrew erlaubt es auf einfache Weise zwischen mehreren Perlinstallationen per Befehl umzuschalten (so ähnlich wie virtualenv bei Python).

Die Einrichtung ist ganz einfach:

curl -kL http://install.perlbrew.pl | bash


Das geht sehr flott und wenn das fertig ist, kann man source ~/perl5/perlbrew/etc/bashrc in die eigene .bashrc einbauen oder ausführen und gleich loslegen.

dirk@drusus:~$ perlbrew available
i perl-5.17.10
  perl-5.16.3
  perl-5.14.4
  perl-5.12.5
  perl-5.10.1
  perl-5.8.9
  perl-5.6.2
  perl5.005_04
  perl5.004_05
  perl5.003_07
dirk@drusus:~$ perlbrew install perl-5.16.3
...


Ohne Parameter aufgerufen, gibt perlbrew eine Hilfeseite aus. available listet die verfügbaren Perl-Versionen, install installiert sie, use benutzt sie und off schaltet Perlbrew aus. So einfach kann es sein.

dirk@drusus:~$ perlbrew use perl-5.17.10
dirk@drusus:~$ perl -version

This is perl 5, version 17, subversion 10 (v5.17.10) built for x86_64-linux

Copyright 1987-2013, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl".  If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page.

dirk@drusus:~$ perlbrew off
perlbrew is turned off.
dirk@drusus:~$ perl -version

This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux-gnu-thread-multi
(with 80 registered patches, see perl -V for more detail)

Copyright 1987-2011, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl".  If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page.

Trackbacks

Dirks Logbuch am : 2013 im Blog ...

Vorschau anzeigen
Im Jahr 2013 habe ich so wenig gebloggt, wie noch nie. Ich nehme mir nicht vor, mehr zu bloggen und ich weiss nicht, wie ich das Blog weiterhin füllen werde, aber es wird vermutlich oder hoffentlich weiterhin Inhalte geben ... Meine Highlights 2013 im Blo

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Dee am :

*Eine Frage abseits des Themas: Ich habe schon des Öfteren bei Dir gesehen, dass Du curl statt wget nutzt. Hat das einen bestimmten Grund?

Dirk Deimeke am :

*Curl kann einfach mehr. Neben dem, dass man bei curl auch mit einem Befehl mehrere Dateien herunterladen kann und eine aussagekräftige Fortschrittsanzeige bekommt, kann man mit curl auch hochladen.

Und, was noch besser ist, curl kann einen ganzen Haufen an Protokollen verwenden, nicht nur http.

Axel Beckert am :

*Ich hab wget lieber als curl, weil curl per Default den Inhalt nach STDOUT packt und ich in 90% der Fälle das Zeugs aber als passend benamste Datei auf der Platte haben möchte. Upload und andere Transportprotokolle als HTTP(S) und FTP brauche ich selten. Wenn ich z.B. scp als "Protokoll" will, kann ich ja gleich scp nehmen, da brauche ich kein curl für. :-)

Und wenn ich's dann doch mal nach STDOUT brauche, sind mir GET und HEAD aus der libwww-perl lieber. Da sagt der Programmname schon, was das Ding macht. (Ok, und ich kenne dort historisch bedingt die Kommandozeilen-Optionen zum Anzeigen der HTTP-Header u.ä. auswendig. :-))

Dirk Deimeke am :

*"curl -O" macht genau das, was DU willst. :-)

curl kann eben auch http-PUT- und -GET-Requests (scp selber ist mir auch egal). Ganz nach Perl "There is more than one way to do it". :-)

Axel Beckert am :

*Ja, klar kann curl das auch, aber "curl -O" ist wesentlich mehr Tipparbeit als "wget". ;-)

Christian M. Grube am :

*Ja, Perl ist etwas feines.
Wenn mein Kleiner Alt genug ist, kann ich auch wieder auf solche feine Vorträge gehen. Naja, eher wenn es dann auch zeitlich passt.
Ich möchte keine Werbung machen, aber das Buch Einführung in Perl von Randal L. Schwartz, Tom Phoenix und Brian D. Foy bei O'Reilly . Ich bin immer noch nicht ganz durch, aber es ist ein Buch welches wirklich Spaß macht und eine gute Einführung in die Programmiersprache ist.

Dirk Deimeke am :

*Das Buch ist klasse! Ich habe (fast) alle Bücher von O'Reilly zum Thema Perl und kann alle empfehlen. Die Autoren haben samt und sonders einen feinen Humor, den man auch versteht, wenn man nicht so fit in Englisch ist.

Axel Beckert am :

*
QUOTE Aus dem Posting:
Die Einrichtung ist ganz einfach: "curl -kL http://install.perlbrew.pl | bash"


Aua! Shellcode über ungesicherte Leitung (http statt https) runterladen und dann direkt und ungesehen ausführen... Nene, da sind mir deutlich zuviele Möglichkeiten dabei, was unerwartetes untergeschoben zu bekommen und das dann bei mir auszuführen.

Dirk, Du hast doch Debian Wheezy. Das wäre dort noch viiiiiel einfacher, und vorallem kryptografisch abgesichert gewesen:

apt-get install perlbrew

Siehe auch http://packages.debian.org/wheezy/perlbrew :-)

Axel Beckert am :

*Sehe grade, HTTPS hätte in diesem Fall auch keinen Unterschied gemacht, da Du anscheinend automatisch immer die Option "-k" (schaltet die SSL-Zertifikatsverifizierung ab) angibst, auch wenn nicht einmal eine HTTPS-URL vorkommt. :-(

Dirk Deimeke am :

*Ich muss zu meiner Schande gestehen, dass ich die Kommandozeile so von Homepage des Projektes in den Artikel gepastet habe. Als ich Perlbrew getestet habe, hatte ich das Skript vorher heruntergeladen und mir angeschaut.

Das ändert aber nichts an der Tatsache, dass ich nicht nach einem Debian-Paket geschaut hatte.

gregoa am :

*dabei gibt's doch für fast alles ein debian-paket, und wenn nicht lässt sich das ändern :-)

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen