Karl Hans Janke Kollaborativ
Heute die Welt, morgen das Sonnensystem!

jan 2009

Show me the code!

alphabeta.klein.jpg

Dies ist der lange ueberfaellige Was ist das denn da alles-Post. Wie das Eingangsposting andeutet, habe ich nach langer Zeit der Prokrastination den 25C3 zum Anlass genommen, diese Seite zu programmieren. Dahinter verbirgt sich ein geradezu koestlich zusammengeschustertes Haskell-Script, welches im wesentlichen eine Ansammlung von Textdateien einliest und daraus eine Ansammlung von HTML-Datein erzeugt.

Die Textdateien verwenden als Format eine minimalistische Variante von John Grubers Markdown, die ich auf den Namen Cleartext getauft habe. ;) Abgesehen davon, nahezu keinerlei Features ausser den absolut noetigsten zu besitzen, gibt es eine kleine Besonderheit: Die Sprache hat eine formale Syntax, spezifiziert als parsing expression grammar (PEG). Das ist ein recht schicker Formalismus irgendwo zwischen Regexen und CFGs, fuer den es von John Meacham eine geile Haskell-Implementation namens Frisby gibt. D.h. die Spezifikation ist gleichzeitig der Parser und umgekehrt.

peg.klein.jpg

Die Seite lebt (natuerlich) in einem darcs-Repository (ja, darcs get http://khjk.org/ funktioniert :D) mit generate.hs im post-apply hook. — Und zack! ;)

Die restlichen Projekte, die schon in der Sidebar auftauchen, werden zu gegebenem Zeitpunkt ihre eigenen Posts abkriegen und aller Voraussicht nach auch Zuwachs erhalten. Es warten insbesondere noch Veroeffentlichungen zu vergangenen Congress-Vortraegen (und deren Videoaufzeichnungen /o\) auf ihr Wiedererscheinen.

PS. Das obere Foto ist uebrigens schon etwas aelter. Ich habe noch weitere huebsche Bilder aus der Vorzeit, die nach und nach ihren Weg ans Tageslicht finden werden. Dieses Exemplar zeigt ein Stueck meiner Implementation sogenannter exact real arithmetic, die ich um und beim letzten Congress gebastelt habe. Dabei werden (reelle) Zahlen als u.U. unendliche (ja, das geht) Listen von binaeren Ziffern zur Basis phi (Goldener Schnitt) (ja, das geht :]) dargestellt. Der ohnehin unuebersichtliche Code ist aus zwei Gruenden nicht online: Erstens habe ich ihn beim Optimieren kaputtgespielt und zweitens habe ich bisher keinen unmittelbaren praktischen Nutzen fuer dieses Zeug entdeckt! ;D

PPS. Verlinkt mich! Ich will bei Google ueber diesen texanischen Radiosender! ;)

Aus gegebenem Anlass

Wir investieren in Infrastruktur. :)

jens-mate.klein.jpg
Zitat: Das Problem ist ja: Schlaf ich jetzt noch??
Nachtrag: Zwei Stunden. :]

Gigeresque

Als gigeresque wollte ich schon immer mal was bezeichnen. :) Ich habe uebrigens keine Ahnung, welche Funktion dieser Apparat mal erfuellt hat…

giger1.klein.jpggiger2.klein.jpg

Und der Vollstaendigkeit halber von der selben Maschine, aber eher brazilesque, wie ich finde. ;)

bizarr-kabel.klein.jpgbizarr-salat.klein.jpgbizarr-u.klein.jpg

PS. Now with RSS!