Skip to content

Cobol und die moderne Welt

Zufällig liefen mir heute Daten über den Weg, die aus einem in Cobol geschriebenen und zugegeben schon etwas älteren Programm stammen. Beim auseinandernehmen der Datenstrukturen stieß ich auf einen für mich ziemlich seltsam anmutenden Datentyp: comp-3.

Stell dir vor, du hast eine gegebene zahl 1234567, die du comp-3 codiert speicherst. Du gibst also 1234567 rein und kriegst hexadezimal 0x12, 0x34, 0x56, 0x7c raus.

Der Aufbau ist an sich recht leicht: Man packt jeweils eine Ziffer in ein 4-bit nybble (also ein teil-byte) und hängt ganz am Schluß noch mal in 4 bit ein "0xC" für positiv oder ein "0xD" für negativ an. Klingt logisch, nicht? Diese Komprimierung stammt noch aus der Zeit, als Speicher wirklich kostbar war, aber mußte man ausgerechnet so speicherplatz sparen?

Zum Glück gibt's heute Internet und immer ein paar Informationen zu seltsamen Datentypen im Netz zu finden ([1], [2]).

Einen schnellen Hack in Python zum Umwandeln nach Signed Integer stell ich mal rein, vielleicht brauchts irgendwann noch mal jemand:

  1. def comp3_to_signed_int(comp3):
  2.     rnum = ""
  3.  
  4.     for nybble in comp3:
  5.         inum = str(hex(ord(nybble)))
  6.         inum = inum[2:]
  7.         inum = inum.rjust(2, "0")
  8.         rnum += inum
  9.  
  10.     if rnum.endswith("d"):
  11.         rnum = rnum[:-1] * -1
  12.     else:
  13.         rnum = rnum[:-1]
  14.  
  15.     return rnum

Browser-Tabs vom 2. Oktober 2005

Browser Tabs an sich sind ja eine wirklich feine Sache. Einen Nachteil in Verbindung mit gespeicherten Sessions (Opera oder Firefox-SessionSaver) haben sie allerdings: Sie neigen dazu, sich zu vermehren, weil man die guten Dinge gerade auf läßt um sie bei Gelegenheit mal zu lesen und zu verarbeiten (also irgendwas mit ihnen anzustellen). Bei mir haben sich nun wieder so einige Tabs angesammelt, die ich ungerne verlieren würde. Also verewige ich sie in Ablage "Blog" und kann dann, sollte ich das jemals wieder tun wollen, auch später noch mal darauf zurückgreifen. Aber zuerst befreie ich meine Tableiste...

Florida, Bush, Waffen und der gesunde Menschenverstand

In Florida ist es jedem Bürger nun erlaubt auf öffentlicher Straße zu schießen, sobald er sich bedroht fühlt. Gouverneur Jeb Bush hält das laut eigenem Bekunden nur für das natürlichste Verhalten im Sinne des gesunden Menschenverstands.

Ist das nun typisch für Florida, für die Waffenlobby und deren Einfluß auf die Politik, für Jeb Bush oder für seinen Menschenverstand?

tweetbackcheck cronjob