[Cologne-pm] Sachen, die die Welt nicht braucht, brauchen Deine Hilfe

Michael Lamertz mike at lamertz.net
Fri Apr 11 16:43:31 CDT 2003


On Fri, Apr 11, 2003 at 11:07:37PM +0200, Christian Schneider wrote:
> On Freitag, April 11, 2003, at 09:45  Uhr, Michael Lamertz wrote:
> 
> >
> >Wieso sollten alle denselben Wert haben?
> >
> >    $b++, $c = 0 if not defined $c[$c];
> >
> >Erhoehe $b um eins und setze $c auf 0 zurueck, wenn das Ende des
> >@c-Arrays erreicht ist.
> >
> 
> ok, seh' ich ein, meine Augen waren müde und mein Hirn noch mehr. Aber 
> ein schönes Beispiel, warum das nachgestellte if böse ist (ja, ja 
> flamet ruhig).

Kannst Du haben, und natuerlich direkt mit der groben Kelle >:->

Wer Augen hat zu sehen...

    $a++;
    $b++, $c = 0 if not defined $c[$c];

Also wenn man von der 1. Zeile darauf schliesst, dass die 2. dasselbe
macht, dann hat man's auch verdient vom modifier-if gebissen zu werden.
Die 2. Zeile ist ca 154,368.7 mal so lang wie die erste.  Alleine als
optisches Signal sollte das schon ausreichen *hinzuschauen*!

Modifier sind eine schoene sache:

    while (<>) {
        next unless /line has a legal format/

        $matches++ if /pattern to count/;

        print ">>$_<<\n" foreach split;
    }

Ich sehe nicht was daran boese ist, ausser der Tatsache, dass es das in
VisualBasic nicht gibt.

    In der natuerlichen Sprache gibt es die ja auch, es sei denn, Du
    schreibst mit der Zunge im Mundwinkel.

Das ^^^^^ War gerade ein Beispiel fuer einen Modifier.

Das Konstrukt

    die "Everything is broken: $!\n"
        unless open LOG, ">$logfile";

sticht durch das vorne stehende Signalwort 'die' direkt in's Auge und
laesst jmd. bei der Code-Durchsicht aufmerken.  "Oh, das ist wichtig.".


Dich hat nicht der modifier gebissen, sonder die Tatsache, dass Du
Deinem Vorurteil "$a++, $b++, $c++?!?  Ist doch alles dasselbe" so sehr
getraut hast, dass Du einfach nicht auf den Code - welcher ja nun
*direkt* daneben deutlich hervorstand - geschaut hast.

Jan-Patrick's Ex-Kollege wuerde Dich dafuer auch provokativ als arrogant
bezeichnen   >:->

Mein Lieblingssatz aus Peter Van Der-Linden's "Deep C Secrets" ist

    "Don't consider your predecessors idiots"

Wenn Du Code siehst bei dem Du sagst "Was fuer'n Bloedsinn!", dann
schau nochmal genauer hin, denn moeglicherweise hatte derjenige einen
Grund - library bug, seiteneffekt, altlast - der sich Dir noch nicht
erschlossen hat.


Genug geflamed?  Wo das herkommt gibt's noch jede Menge  :-P

Mike

-- 
	    Well, then let's give that Java-Wussie a beating... (me)
		-=+ Join Cologne.pm at http://cologne.pm.org +=-

Michael Lamertz                        |     +49 2234 204947 / +49 171 6900 310
Sandstr. 122                           |                       mike at lamertz.net
50226 Frechen                          |                 http://www.lamertz.net
Germany                                |               http://www.perl-ronin.de 



More information about the Cologne-pm mailing list