
Und es ist made in Germany - bedank Dich bei Martin von Löwis :-)
Gibt es solch einen Ansatz eigentlich schon in einer anderen Programmiersprache?
In der Form ist mir nichts anderes bekannt; ich halte es also schon für meine Idee (und den Start der Implementierung kommt von Torsten Beckers GSoC-Projekt).
Vom Speicherbedarf ist Python damit ungefähr gleichauf mit Perl, was standardmäßig UTF-8 als Unicode-Repräsentation benutzt. "Ungefähr" heißt: In manchen Fällen (z.B. Latin-1, deutsche Umlaute usw.) braucht Python weniger; in anderen Fällen (viel ASCII mit ein paar nicht-Latin-1-Sonderzeichen) braucht Perl weniger (weil im Python-String dann alle Zeichen auf 2 Byte ausgedehnt werden, wenn ein Zeichen 2 Bytes braucht). Der Vorteil der Python-Repräsentation ist m.E., dass der Indexzugriff in konstanter Zeit passiert (was UTF-8 nicht erlaubt).
Ciao, Martin