Archive for February, 2007

Hat das Leben einen Sinn?

Die Sinnfrage stellt mich vor ein Problem: Wenn ich sie auf der einen Seite mit Logik, auf der anderen Emotional beantworte, komme ich zu verschiedenen Ergebnissen.

Da ich weiß, dass meinen Emotionen keiner offenkundigen syllogistischen Logik folgen, ist das eigentlich kein Problem, aber schön ist es auch nicht

Der Logik-Ansatz

Wenn der Sinn des Menschen aus sich selbst heraus käme, wäre eine einfachere Lösung des “Problems Leben”, dass es den Menschen gar nicht gibt. Ein Problem, das seine eigene Lösung ist und sonst nichts bewirkt, ist zu nichts gut, also sinnlos.

Dieses Argument kann man auf die gesamte Menschheit erweitert werden: Wenn der Sinn der Menschen in der Interaktion mit anderen Menschen läge (ihnen helfen, sie glücklich machen, sie zu lieben, geliebt zu werden, bekehren usw.), könnte es auch ganz einfach überhaupt keine Menschen geben.

Und noch weiter kann man es damit treiben: Auf die gleiche Art kann man argumentieren, dass das Universum aus sich selbst heraus keinen Sinn haben kann.

Der Sinn des einzelnen Menschen, der Menschheit und des Universums kann also nur außerhalb des Universums liegen. Und nach unserer Definition des Universums gibt es nichts außerhalb des Universums.

Außer vielleicht Gott, wenn wir an seine Existenz glauben.

Halten wir fest: Die Sinnfrage wird, nach genug Nachdenken, identisch mit der Frage, ob es (einen) Gott gibt.

Die emotionale Seite

Die emotionale Seite der Medaille ist sehr individuell, und hängt natürlich von den Lebensumständen ab.

Hier nur so viel: meinem Gefühl nach hat mein Leben einen Sinn, woran meine Freundin sicher einen Signifikanten Anteil hat ;-)

Comments (2)

Perl6: Operatoren I

Perl6 bietet eine Fülle neuer Operatoren, die einen auf den ersten Blick erschlagen. Daher hier nur ein paar besonders nette.

Der Zip-Operator verschachtelt listen:

 (1 .. 4) Y <a b c d>
# liefert ((1, "a"), (2, "b"), (3, "c"), (4, "d"))

Die Spitzen Klammern sind die neue Schreibweise für qw(), also für eine Liste von Worten, mit Leerzeichen getrennt.

Natürlich kann man den Zip-Operator auch mehrfach anwenden:

(1 .. 4) Y <a b c d> Y <a B C D>;
# gibt ((1, "a", "A"), (2, "b", "B"), (3, "c", "C"), (4, "d", "D"))

Wer öfter mit Listen von Zahlen rumhantieren muss, wird sich über die “reduzierenden” Operatoren in Eckigen Klammern freuen, [+] zum Beispiel:

[+] (1, 2, 4);
# gibt 1+2+4 = 7

Das funktioniert mit beliebigen numerischen Operatoren, z.B. die Fakultät lässt sich schon schreiben:

[*] (1 .. 10);
# wird zu 1 * 2 * .. * 10 = 3628800

Der “Hyperoperator” verknüpft Arrays mit Arrays:

(1 .. 4) >>+<< (2 .. 5); # gibt (1+2, 2+3, 3+4, 4+5) = (3, 5, 7, 9)
(2, 3) >>**<< (2, 3); #gibt (2**2, 3**3) = (4, 27)

Hier ist ** der Potenzoperator, und der Hyperoperatore >>…<< sorgt dafür, dass er elementweise auf die Arrays angewandt wird.

Fehlende Elemente werden durch sinnvolle Defaults ersetzt, also 0 bei Addition und 1 bei Multiplikation:

(1, 2, 3) >>+<<(1, 2); # gibt (2, 4, 3)
(1, 2, 3) >>*<<(1, 2); # gibt (1, 4, 3)

Wenn eines der Array aber nur ein Element hat, wird dieses auf das gesamte andere Array angewandt:

(1, 2, 3) >>*<< 2;  # gibt (2, 4, 6), jedes Element verdoppelt

Technorati Tags: , , ,

Comments

Google zeigt jetzt auch Backlinks an…

… aber nicht öffentlich.

In den “Webmaster Tools” kann man sich jetzt die Anzahl der externen Links zu eigenen Seiten (und auch die Links selbst) anzeigen lassen. Bisher musste man sich da ja auf yahoo verlassen.

Via Offizielles AdSense Blog.

Update: Lustigerweise zeigt Google, das ja zusammen mit anderen Suchmaschinen die rel=”nofolow”-Links erfunden hat, auch eben jene an.

Technorati Tags: , ,

Comments (1)

Perl6-Sugar: Funktionsaufrufe

Mit pugs existiert bereits ein erste, wenn auch nicht vollständige Perl6-Implementierung.

Perl 5 war ja schon eine tolle Sprache, aber sie hatte auch ein paar Nachteile (was ein Perl-Hacker natürlich niemals zugeben würde). Perl6 beseitigt viele davon, und fügt jede Menge tolle, neue Features hinzu.

In Perl 5 hat man bei Funktionsdeklarationen keine Liste von Parametern angegeben, sondern die Parameter automagisch aus dem dem Array @_ geholt:

sub fakultaet {
    my $i = shift;
    if ($i < 2){
        return 1;
    } else {
        return $i * fakultaet($i - 1);
}

Das ist zwar sehr flexibel, aber nicht immer schön. Mit Perl6 geht es jetzt besser:

use v6;
sub fakultaet($i){
     if $i < 2 {
     ...

Man kann auch dazu sagen, dass man gerne einen Integer möchte (die Verallgemeinerunger der Fakultät auf die Gammafunktion ist recht komplex, wir sind zu faul sie zu implementieren):

use v6;
sub fakultaet($i is Int){
    if $i < 2 {
    ...

Damit hat man Typsicherheit und Effizienz gewonnen.

Auch kann man in Perl6 Defaultwerte für Argumente angeben:

sub fuga($i is Int, $j is Int = $i){
	return $j == 1 ?? $i !! $i ** fuga($i, $j-1);
}

(Der ?? !! Operator ist die Neufassung des Ternären Operats (bedingung) ? wahr : falsch, d.h. wenn die Bedingung vor ?? bzw ? zutrifft wird der Ausdruck wahr zurückgeliefert, wenn nicht wird der Ausdruck falsch zurückgeliefert).

Was macht unsere nette fuga-Funktion? fuga(1) liefert 1, fuga(2) liefert 22, fuga(3) liefert 3(3^3) usw, erfunden von Richard P. Feynman.

Aus Sicht des Perl6-Entwicklers interessant ist, dass dem Parameter $j ein Defaultwert zugewiesen wird, der in diesem Falle sogar noch von dem ersten Parameter abhängt - wenn das mal keine Magie ist!

Technorati Tags: , , ,

Comments

Projekt text-link-ads.com für mich gescheitert

Vor etwa einem Monat habe ich mir überlegt, dass ich mit dem Verkauf von Textlinks auf meinen Homepages etwas Geld verdienen könnte - wenn es genug ist um die Serverkosten zu bezahlen, könnte ich das AdSense-Javascript-Zeugs runter schmeißen.

Ich habe meine Seiten bei text-link-ads.com und linklift.de angemeldet, und die erste unangenehme Überraschung für mich war, dass anscheinend primär PageRank entscheidend ist.

Die zweite war die grauenhafte Useabilty der beiden Seiten, die jeweils nicht mit Firefox funktioniert haben, bei tla bin ich auf Konqueror ausgewichen, bei linklift auf Opera.

Die dritte unangenehme Überraschung war dann, dass ich bei beiden Anbietern zwar mit in ihr Portfolio aufgenommen wurde, aber mir keine Links verkauft wurden.

Aus unerfindlichen Gründen habe ich beschlossen, linklift noch eine Chance zu geben (vielleicht noch einmal einen Monat, oder auch zwei), bei tla habe ich mich meine Seiten auf Inaktiv gesetzt.

Kennt jemand gute Alternativen zu den beiden genannten Anbietern?

[Update]

Inzwischen habe ich einen Kunden bei linklift, vielleicht wird das ja doch noch mal was…

Technorati Tags: , , , ,

Comments