Einrückungen und Klammern – so nicht

So nicht:

   private final boolean cvc(int i)
   {  if (i < 2 || !cons(i) || cons(i-1) || !cons(i-2)) return false;
      {  int ch = b[i];
         if (ch == 'w' || ch == 'x' || ch == 'y') return false;
      }
      return true;
   }

Erstaunlicherweise stammt der Code nicht von irgendeinem Programmieranfänger, sondern von Martin Porter, dem “Erfinder” des Porter Stemming Algorithmus.

Ähnliche Beiträge

4 Gedanken zu “Einrückungen und Klammern – so nicht

  1. Ich finde das nicht erstaunlich. Aus dem Fakt, dass Herr Dr. Porter ein begnadeter Wissenschaftler ist, lässt sich nicht folgern, dass er auch ein „Clean Coder“ ist. Meine Erfharung hat mich eher das Gegenteil gelehrt 🙂

  2. Wissenschaftler sind gerne auch immer ein bisschen eigen. Das äussert sich natürlich auch in ihrem Code (persönlich neige ich ja bei offensichtlichen Funktionen zur in die Irre führenden Dokumentation).

  3. Das „Clean Coder“ und etwas eigen sein stimmt schon. Andererseits sollte man aber doch davon ausgehen, dass gerade Wissenschaftler klar und strukturiert denken und darum selbst irgendwann erkennen, dass es nicht darauf ankommt, die Buchstaben beim schreiben möglichst kompakt zusammenzuschieben sondern eher Lesbarkeit, copy&/cut&paste-barkeit zu erleichtern.

    Das nicht zu tun ist ungefähr so als würde ein Informatiker zu einem Physiker sagen „Ach komm, wir runden Pi auf 3.00, dann kann ich einen performanteren Integer dafür hernehmen“. Der Physiker würde wahrscheinlich sofort das Messer ziehen :DD. (Okay der Vergleich hinkt weil Pi 3.00 Fehler produzieren wird, aber die Vorstellung ist einfach so lustig :D)

    Insofern: Guter Artikel (recht so!)

    Die provokante Frage wäre jetzt natürlich: was ist denn das beste Klammerungsbild? Hm… das wollt ich eh schon mal in meinen Blog schreiben…

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert