Datenterrorist
"Just because you're paranoid doesn't mean they're not after you." - Kurt Cobain _

.:: Perlbrew ::.

"perlbrew is a tool to manage multiple perl installations in your $HOME directory. They are completely isolated perl universes. This approach has many benefits:

No need to run sudo to install CPAN modules, any more.
Try the monthly released new perls.
Learn new language features.
Test your production code against different perl versions.
Leave vendor perl (the one that comes with OS) alone
Vendor perl usually serves its own purposes, and it might be a bad idea to mess it up too much.
Especially PITA when trying to upgrade system perl.
Some vendors introduced their own perl bugs, twice!
Hacking perl internals.
Just to keep up with fashion."

Click
24.09.12 11:07:19 - balle - 439 comments - Perl


.:: Net::ARP 1.0.3 ::.

Changelog:

Fixed possible buffer overflow in get_mac_linux()
FreeBSD 7 amd64 patches by mitsuru@riken.jp
Click
26.07.08 22:37:26 - balle - 305 comments - Perl


.:: Net::ARP 1.0.2 ::.

Net::ARP 1.0.2 ist raus mit Bugfixes für FreeBSD 7.
Click
02.01.08 16:13:10 - balle - 472 comments - Perl


.:: Net::ARP 1.0.1 ::.

Es gibt ne neue Version des Perl Moduls Net::ARP auf CPAN, die nen Segfault auf 64 Bit CPUs fixed.
HF && Click
16.08.07 17:31:13 - balle - 554 comments - Perl


.:: Perl 6 ::.

"Perl 6 will soon be here. How will programming in Perl 6 be different from programming in Perl 5 for your average Perl programmer? The answer is: very different yet very much the same. A Perl 6 program viewed at arm's length will look much like a Perl 5 program viewed at arm's length. Programming in Perl 6 will still feel like programming in Perl. What will change however, is that Perl 6 will enable programmers to be more expressive by giving them more tools to work with (making easy things easy) and allowing them to be more precise in their expressions."
Read Perl.com article

"Perl 6 hat viele tolle Features (oder wird sie haben, wenn es fertig ist:
Rules, die Nachfolger von Regular Expressions, erlauben das automatische Parsen ganzer Grammatiken
Ein ausgefeiltes Objektmodell mit Mehrfachvererbung, Roles und vielem mehr
Einfache Interaktion mit anderen Programmiersprachen
Einfache Handhabung von Unicode-Strings
Einfach zu lernen, da man auch mit einer Teilmenge der Sprache schon sehr weit kommt.
Komplette Unicode-Unterstützung"


Perl 6 jetzt ausprobieren mit v6 Module ala Perl-6.de oder mit PUGS via diveintoperl6.blogspot.com
Oder noch einfacher mit PUGS im Browser

Last but not least für die lesefaulen ein Podcast zum Thema Learning Perl6
30.06.07 13:44:04 - balle - 405 comments - Perl


.:: Refactoring in Perl ::.

Ich beschäftige mich derzeit mit Refactoring Techniken in Perl und hier mal ein paar brauchbare Links:

Test::More Tutorial
Refactoring by Example
Extreme Perl / Unit Testing
Extreme Perl / Refactoring
24.03.07 13:59:47 - balle - 442 comments - Perl


.:: Net::ARP Version 1.0 ist raus! ::.

Ha! Mein erstes Open Source Projekt, das es auf die 1.0 Version schafft!

Das alte Modul wurde grundlegend überarbeitet, eine neue Test Suite, die auf illegalen Input validiert, hat geholfen einige Fehler zu fixen und die wohl wichtigste Neuerung ist die Änderung der Schnittstellen für arp_lookup() und get_mac().
Der Rückgabewert wird hier nicht mehr als Parameter übergeben und modulintern manipuliert, sondern als Rückgabewert geliefert, um die Handhabung klarer und perlischer zu gestalten.

Ansonsten wird das Net::Pcap nicht mehr vorrausgesetzt, um die Tests zu bestehen und der Source des Moduls befindet sich in einem Monotone Repository.
Falls also wer Lust hat Code beizusteuern... Feel free and drop me a mail! ;)
Click
01.02.07 20:51:59 - balle - 496 comments - Perl


.:: Using Java Classes in Perl ::.

"The key to using JCR from Perl is Inline::Java. This library allows a Perl program to call Java methods with very little effort. For an introduction to Inline::Java, I suggest starting where I did, Phil Crow's 2003 Bringing Java into Perl article on Perl.com about Inline::Java. I also relied heavily upon the documentation for Inline::Java, which is very complete, if not exhaustive.
To get started on using the JCR, I used the reference implementation, Jackrabbit. [...]"

Click
22.12.06 19:15:25 - balle - 132 comments - Perl


.:: CPAN::Forum ::.

Zum CPAN gibt's nu auch nen Forum unter http://www.cpanforum.com/.
01.10.06 12:04:31 - balle - 860 comments - Perl


.:: Perl Exception Handling ::.

Normalerweise benutzt man für Exceptions in Perl Klassen das Modul Carp.
Man sollte in Erwägung ziehen ebenfalls das Modul Fatal zu verwenden, damit können normale Perl Funktionen wie open() und close() automagisch Exceptions auslösen.

use Fatal qw(open close);

Zusätzlich sollte man Exception Klassen mit Hilfe von Exception::Class basteln.
01.10.06 12:01:06 - balle - 546 comments - Perl


.:: Inside-Out objects ::.

Meist werden Perl Objekte als blessed Hash Referenzen implementiert, diese Methode hat allerdings den Nachteil, dass Nutzer des Moduls in dessen Innereien rumfummeln können, Kapselung ist nicht mehr als Vertrauenssache.
Schluss damit!
Mit Inside-Out Objekten bekommt der Nutzer nur noch eine Referenz auf einen anonymen Skalar. Die Attribute werden in Hashes innerhalb der Klasse gehalten und die Speicheradresse des Objekts dient als Key. So gibt's keine Möglichkeiten auf Interna zu zu greifen, weil es sie schlicht nicht gibt.
Das Modul Class::Std::Utils hilft hierbei z.B. mit anon_scalar() und ident().
01.10.06 11:50:14 - balle - 431 comments - Perl


.:: Doku für Perl Projekte ::.

cpan install Pod::ProjectDocs

Mit diesem Modul kann man seine POD Doku im CPAN Style (HTML basiert mit Suchfunktion) auf Knopfdruck erstellen.

Und so geht's:

#!/usr/bin/perl -w

use Pod::ProjectDocs;
use strict;

my $pd = Pod::ProjectDocs->new(
outroot => "doc/",
libroot => ".",
title => "Bluediving"
);

$pd->gen();
01.10.06 11:45:01 - balle - 192 comments - Perl


.:: Advanced Perl ::.

Ich habe mich heute mal auf die Suche gemacht, um meine Perl OOP Kenntnisse zu erweitern, hier die Links, die ich als sehr empfehlenswert erachte:

perlcast.com (insbesondere practices-of-an-agile-developer)
planet.perl.org - Gesammelte Perl News als RSS Feed
perldesignpatterns.com
Tangram - Ein Object-Relational Mapper
Presto - An Object Oriented Database System for Perl
jifty.org - web application framework
Ansonsten kann ich noch das Modul Test::Unit zur testgetriebenen Entwicklung empfehlen.
Hat jemand Ergänzungen?
16.08.06 22:00:02 - balle - 645 comments - Perl


.:: Chaotische Ausgabe ::.

ls -al | perl -e '@a=; map{$i=int(rand($#a)); print $a[$i] . "\n"; delete $a[$i];} @a;'
08.05.06 17:43:46 - balle - 36 comments - Perl


.:: Net::ARP Bugfixes ::.

Mein Net::ARP Perl Modul ist mittlerweile bei Version 0.8 und das heutige Update fixed einen Segfault in der send_packet() Funktion, sowie behebt fehlerhafte Return Values der Funktionen get_mac() und arp_lookup() sowohl in der Linux als auch BSD Version.
Es wird geraten das Update einzuspielen und die Changes Datei zu lesen!
Click
09.02.06 21:26:22 - balle - 718 comments - Perl