Martin Sonneborn gratuliert dem Grundgesetz im Osten
Herzlichen Glückwunsch zum 20.!
Gruss an die Neokonservativen Freunde hier und über dem Teich
... von Hagen Rether. Lief schon Ende letzten Jahres, aber ist eine seiner besten Arbeiten ;-)
Was wäre gewesen
... wenn Ohnesorg nicht von Kurras erschossen worden wäre?
fragt sich Extra 3.
Baptism of fire for pyPEG
For a customer I used pyPEG for creating a compiler from IEC 61131-3 to XML. After only four workdays, I had a running solution, which not only compiles standard compliant input but also 3S input.
The resulting compiler compiles between 400 and 1000 LOC per second on my MacBook Pro (measured with different real world samples). Well, that's not too fast, but usuable. I will try to investigate how to improve that.
60 Jahre Grundgesetz
... die Gratulationsveranstaltung.
YML 2.1.4: yml2proc corrected
It seems that the 2.1.3 version includes a broken version of yml2proc. This version corrects that.
YML 2.1.3 released
Fixed a bug so the XPath document() function now works with local paths in YSLT scripts (thank you, Phoenix!)
Wichtige Information der geliebten Bundesregierung
... die ZAF bringts auf den Punkt.
Herzlichen Glückwunsch
Der Kampf der (Sub-)Kulturen ist noch nicht vorbei
Der Neokonservativismus rüstet zum Gegenschlag. Nachdem die Bush-Ära zu Ende ist, schwankt das politische Bild aber noch.
Es scheint noch nicht klar, wohin Obama möchte: zumindest aus den Ankündigungen, dass er etwas gegen die Folterknechte unternimmt, scheint nichts zu werden.
Die Neokonservativen hierzulande fühlen entsprechend wieder Wind im Rücken. Sie bereiten die Einführung einer umfassenden Internetzensur vor. Somit kann die öffentliche Meinung auch hier gelenkt werden, wie es in der grösstenteils gleichgeschalteten Presse und den von den Parteien kontrollierten staatlichen und den mächtigen privaten Fernsehsendern bereits der Fall ist.
Letztendlich ist das eine Machtfrage, an der das System der westlichen Welt entschieden werden wird: entweder ist der Übergang zu reinen Polizeistaaten erreicht, oder es wird gelingen, die westliche Welt wieder auf den Weg der Demokratie und der freiheitlichen Rechtsstaaten zurück zu führen.
Es bleibt erstmal spannend.
Die Umfrage von Infratest-Dimap sagt aus
... dass nahezu 100% der Deutschen gegen Kinderpornographie sind, aber 8% der Gefragten gemerkt haben, dass sie mit der Umfrage verarscht werden.
Schade, liebe Befragten, da hätte ich mir eine höhere Quote erhofft. Das müssen wir nochmals üben.
pyPEG 0.31 fixes bugs
... you can find the updated version here, as usual.
Diese Zeitungen muss man nicht mehr lesen
Das Jammern und Zähneklappern im Zeitungsmarkt ist gross - die Leute lesen immer weniger Zeitung, immer mehr Leute lesen im Web, was früher auf Papier konsumiert wurde.
Dabei sind die Zeitungen grösstenteils selber schuld. War es früher interessant, Zeitung zu lesen, stehen heute alle Zeitungen voller dpa- und Reuters-Meldungen. Die Zeitungen sind schon lange - aus Kostengründen - gleichgeschaltet.
Wer Reuters kontrolliert, kontrolliert die Weltmeinung.
Entsprechend erklären sich auch "Unfälle" wie der, dass jetzt einige davon auf die Propaganda der "Kinderhilfe" reinfallen. Ohne eigenen Reporterstamm, voll mit Volontären und Praktikanten, Redakteure, die hauptsächlich Agenturmeldungen wie Blindtext setzen, da kommt was "Griffiges" einer wohlklingenden Organisation doch grade recht. Auch das kann man wie Blindtext "einkippen".
Zeitung lesen? Wozu? Blindtext lässt sich generieren, warum soll man den noch lesen? Gut, wenn uns die Redaktion der Titanic da hin und wieder drauf hinweist.
How to quickly parse a language to XML with pyPEG
Because this is a common task, maybe this little sample can be helpful. The following backend function writes out a pyAST to XML:
from xml.sax.saxutils import escape
def pyAST2XML(pyAST):
if isinstance(pyAST, str):
return escape(pyAST)
if isinstance(pyAST, tuple):
result = "<" + pyAST[0].replace("_", "-") + ">"
for e in pyAST[1:]:
result += pyAST2XML(e)
result += "</" + pyAST[0].replace("_", "-") + ">"
else:
result = ""
for e in pyAST:
result += pyAST2XML(e)
return result
This sample program uses the implementation above to convert a simple language to XML:
from pyPEG import parseLine
from xmlast import pyAST2XML
import re
def call(): return symbol, "(", parms, ")", ";"
def symbol(): return re.compile(r"\w+")
def parms(): return symbol, -1, (",", symbol)
def program(): return call, -1, call
text = "f(x, y);"
result, rest = parseLine(text, program)
print pyAST2XML(result)
A test run:
Wes Geistes Kind die sogenannte Kinderhilfe ist
... beschreibt in diesem Artikel die "Welt":
Nicht gemeinnützig, kommerziell, aus dem Spendenrat rausgeschmissen, grade mal acht Mitglieder gross neben vielen "Fördermitgliedern", von der Aufsichtsbehörde mit Spendensammelverbot belegt, "Unklarheiten" bei Finanzstrukturen, Datenschutz und Mittelverwendung.
Die Liste der nachgewiesenen Vorfälle und Auffälligkeiten ist derart lang, dass man den Eindruck einer kriminellen Vereinigung gewinnen könnte statt eines Vereins für Kinder.
Kohl erhält Nazi-Preis
Wie der Spiegel schreibt, erhält Kohl den Hanns-Martin-Schleyer-Preis.
Schleyer dürfte den meisten als RAF-Opfer in Erinnerung sein. Es sollte aber auch nicht vergessen werden, dass Schleyer SS-Mitglied Nr. 227.014 war, und von Reichsstundentenführer Scheel persönlich als Leiter des Studentenwerks der Uni Insbruck empfohlen worden.
Untersturmführer Schleyer war danach Büroleiter beim Präsidenten des Zentralverbandes der Industrie für Böhmen und Mähren, der zuständig war für die “Arisierung” der tschechischen Wirtschaft.
Zynischerweise hat Kohl den Preis "für hervorragende Verdienste um die Festigung und Förderung der Grundlagen eines freiheitlichen Gemeinwesens" erhalten.
YML 2.1.2 released: the Null Function
Moving the possibilities of YML forward to express C like DSLs, I added a feature called Null Function.
An example:
decl _ +type +name alias func;
decl in +type +name, out +type +name,
inout +type +name;
decl interface +name;
interface Testcase {
void f(in string input);
long getOptions();
}
compiles to:
<interface name="Testcase">
<func type="void" name="f">
<parms>
<in type="string" name="input"/>
</parms>
</func>
<func type="long" name="getOptions"/>
</interface>
pyPEG 0.30 fixes bug with skipWS=False
You can use this patch or download the new version from the pyPEG homepage.
--- pyPEG.py-0.29 2009-04-30 14:41:33.000000000 +0200
+++ pyPEG.py 2009-05-02 08:22:49.000000000 +0200
@@ -1,4 +1,4 @@
-# YPL parser 0.29
+# YPL parser 0.30
# written by VB.
@@ -71,6 +71,8 @@
if skipWS:
text = textline.strip()
+ else:
+ text = textline
if inputLength:
position = inputLength - len(text) - 1