Vorbereitung: apt-get install filters

Dann für einen Überblick:

for i in b1ff chef cockney eleet fudd kenny kraut pirate spammer upside-down; do echo $i; echo "Far out in the uncharted backwaters of the unfashionable end of the western spiral arm of the Galaxy lies a small unregarded yellow sun." | $i; echo; done

b1ff
FAR OUT 1N THE UNCHARTED BACKW8RZ UV THE UNFASHIONABLE END UV THE WESTURN SP1RAL ARM UV THE GALAXY LEIZ A SMAL UNREGARDED YELOW SUN.

chef
Fer oooot in zee uncherted beckveters ooff zee unffesheeuneble-a ind ooff zee vestern speerel erm ooff zee Gelexy leees a smell unregerded yelloo soon.
Bork Bork Bork!

cockney
Far out in the bloody uncharted backwaters of the unfashionable end of the flinkin‘ western spiral arm of the Galaxy lies a small unregarded yellow sun.

eleet
f4r 0ut 1n th3 unch4rt3d b4ckw4t3r5 0f th3 unf45h10n4bl3 3nd 0f th3 w35t3rn 5p1r4l 4rm 0f th3 g4l4xy l135 4 5m4ll unr3g4rd3d y3ll0w 5un.

fudd
Faw out in de unchawted backwatews of de unfashionabwe end of de westewn spiwaw awm of de Gawaxy wies a smaww unwegawded yewwow sun, uh-hah-hah-hah.

kenny
Mpfmmmpff ppffmffmp mffppp fmpmfpmpp fmfpppmmfmfpmmmpfffmpmppmpm mmpmmmmmfpmpfppmmmfmpmpppfffmm ppfmpf fmpmfpmpp fmfpppmpfmmmfmmmfpmffppfpppmmmmmppmfmpp mpppppmpm ppfmpf fmpmfpmpp fppmppfmmfmpmpppffppp fmmpfmmffpffmmmpmf mmmpffppm ppfmpf fmpmfpmpp Mfmmmmpmfmmmfpfffm pmfmffmppfmm mmm fmmppmmmmpmfpmf fmfppppffmppmfmmmmpffmpmmppmpm ffmmpppmfpmfppffpp fmmfmfppp.

kraut
Far out in ze uncharted backwaters uff de unfaschionable end uff de vestern spiral arm uff de Galaxy lies a small unregarded yellow sun.

pirate
Far out in th‘ uncharted backwaters o‘ th‘ unfashionable end o‘ th‘ western spiral arm o‘ th‘ Galaxy lies a small unregarded yellow sun, by Blackbeard’s sword.

spammer
Dear Friend, Far
out in the uncharted backwaters of the unfashionable end of the western spiral arm of the Galaxy lies a small unregarded
yellow sun.

This is a one time e-mail!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To be removed from this mailing list send an email and put in the subject the word „remove“.
8D4A20728CC8670635C16C332F1AC2F2A6BF10F91546EECE6641A5F2EAD63C76003F62F2B
6074CB9FC2FDC32EEC1B603FE5BFF77248701E2BE4AB7DA342C4AF5E1E929FB8D08915635103D

upside-down
‚uns mo77ah papje6ajun 77ews e sa!7 hxe7e6 ayf jo wje 7ej!ds ujafsam ayf jo pua a7qeuo!ysejun ayf jo sjafem>|)eq pafjey)un ayf u! fno jej

Den letzten finde ich besonders witzig, auch wenn man da im Vorteil ist wenn man keinen Röhrenmonitor mehr hat: das liest man kopfüber… :-)

Klingt doof, ist es wahrscheinlich auch. Hab ich mir trotzdem selbst ausgedacht. :-)

Ich habe schon öfter gehört dass Elektroautos — wenn sie denn mal endlich in den Massenmarkt kommen — künstliche Motorgeräusche absondern sollen wenn sie fahren, da sie ansonsten zu leise und somit potentiell überraschend gefährlich sind.

Nachdem man mit sowas dämlichem wie Handy-Klingeltönen Schweinegeld machen kann habe ich mir überlegt dass das mit Autos eigentlich doppelt gut gehen sollte. Deshalb habe ich Heute einfach mal Klingeltöne für Autos erfunden. Oder gibt es das schon? Wenn nicht hätte ich gerne mindestens 10% der Gewinne für die Idee. :-)

Der Plan: Das Auto erzeugt die Geräusche in Zukunft synthetisch, der Klang hat also keinen technischen Grund. Es sollte also möglich sein, zwischen Benzin-, Diesel-, 2CV-, Ferrari- oder Schiffsdiesel-Klang zu wählen, oder? Ich persönlich hätte gerne den Sound einer Dampflok im Auto. :-D

Im Gegensatz zu Handy-Tönen sollten die dann aber natürlich auch angepasst an Geschwindigkeit und Fahrstil erzeugt werden.

Die Rechtfertigung: Eine Menge Leute geben eine Menge Kohle für Handys und Klingeltöne aus. Für Autos geben weniger Leute Geld aus, dafür aber um so mehr. Der Plan kann nicht schief gehen…

HP-42S mit Original-SkinOK, als ‚Fortgeschrittenen‘ würde ich mich im Bereich Mathematik nicht sehen. Absolut nicht. Ich kann nicht mal mehr schriftlich multiplizieren, geschweige denn dividieren. Aber dafür weiß ich wie man einen Taschenrechner bedient. Dachte ich… :-)

Bislang habe ich auf dem Computer immer gcalctool benutzt. Das ist übersichtlich und kann eigentlich alles was man so dauernd braucht. Zufällig habe ich vor ein paar Tagen einen Emulator für einen real existierenden Taschenrechner gefunden. Emulator? Für einen verdammten Taschenrechner?!? Ja, genau. Free42 heißt das dann.

Bei dem Vorbild handelt es sich um das Modell HP-42S, das wurde 1988 von Hewlett Packard vorgestellt und — ich glaube — bis 1994 gebaut. Das Ding findet man natürlich im Taschenrechner-Museum von HP, aber auch in der Wikipedia. Ein programmierbarer Taschenrechner, Umgekehrte polnische Notation, etwa 600 eingebaute Funktionen und 7200 Bytes Platz für eigene Programme. Ich weiß nicht warum, aber das hat mich irgendwie fasziniert. Und nicht nur mich: bei Online-Versteigerungen wird das Ding offenbar teilweise mit über 200 Euro gehandelt. Das ist deutlich mehr als der originale Verkaufspreis vor 15 Jahren, als man das noch im Laden kriegen konnte. Der lag soweit ich weiß bei 130 Dollar.

HP-42S PlatzsparenderWie sieht jetzt so ein Taschenrechner-Programm aus? Was kann man damit machen? Man kann damit eine ganze Menge tun, wie man schnell sieht wenn man sich ansieht was es an Beispielen im Netz gibt. Ich habe mir mal das Alternative Manual durchgelesen und losgespielt. Ein Beispiel muss her…

Das erste was ich benutzt habe ist die Solver-Funktion. Dabei programmiert man eine Funktion mit mehreren Unbekannten (z. B. das Ohmsche Gesetz: U=R*I) die man umgestellt hat so dass 0 rauskommt (also U-R*i=0). Dann kann man die Variablen der Reihe nach mit Werten belegen und den unbekannten berechnen lassen. Man gibt also Spannung und Strom an die für eine LED benötigt werden und kriegt direkt den Widerstand, ohne selbst zu rechnen. Oder Man gibt den gewünschten Strom und den Widerstand an und bekommt die Spannung an der das betrieben werden muss. Nett, aber trivial. Ein komplizierteres Beispiel muss her…

Die Aufgabenstellung habe ich aus einem Podcast ueber Leonhard Euler, allerdings habe ich als Laie wohl was falsch verstanden. Wahrscheinlich ging es um die Euler-Mascheroni-Konstante oder um das Basel-Problem, mein Programm ist vermutlich total uninteressant. Trotzdem taugt es als Beispiel. Die Aufgabe besteht darin, die Kehrwerte von ganzen Zahlen zu addieren. Also 1/1 + 1/2 + 1/3 + 1/4 und so weiter. Mittlerweile weiß ich, dass man das auch mit Logarithmen berechnen kann, aber wie angedeutet würde ich da von alleine nicht drauf kommen.

LBL "EULER"
STO 01
0
STO 02
RCL 01
LBL A
1/x
STO+ 02
RCL 01
1
-
STO 01
x>0?
GTO A
RCL 02

Das Programm arbeitet wie folgt:

  • aktuellen Wert des X-Registers (also die letzte eingegebene Zahl) in Speicher 01 sichern
  • 0 in Speicher 02 schreiben
  • Speicher 01 wieder herstellen
  • Sprungmarke A setzen
  • von der wiederhergestellten Zahl den Kehrwert bilden und zu Speicher 02 addieren
  • Speicher 01 wieder herstellen
  • 1 subtrahieren und den neuen Wert wieder in 01 speichern
  • wenn der Wert groesser 0 ist, nach A springen
  • ansonsten das Ergebnis aus Speicher 02 anzeigen

Also quasi folgendes, nur halt im Taschenrechner (und nicht nur fuer 100):

perl -e "$j=0;for($i=1;$i<=100;$i++){$j+=1/$i};print$j;

In einer Tabellenkalkulation habe ich das auch mal gemacht um die Werte zu kontrollieren, aber da kann man das (ohne wirklich zu programmieren) nur bis knapp ueber 60.000 machen, weil dann die Tabelle am Ende ist. Das Ergebnis fuer 999.999.999 ist 21,3004815013 (da hat der Taschenrechner aber auch eine Weile drauf rumgekaut).

Ich bin einfach mal weiter fasziniert, vielleicht konnte ich ja irgendwen anstecken… ;-)

Das erinnert mich daran warum ich die Sprache C nach Möglichkeit nur auf Mikrocontrollern benutze:

rschaten% cat array.c
#include <stdio .h>
int main(int argc, char **args) {
  char *string = "abc";
  printf("%c %c %cn", string[0], string[1], string[2]);
  printf("%c %c %cn", 0[string], 1[string], 2[string]);
  return 0;
}

rschaten% gcc -o array array.c

rschaten% ./array
a b c
a b c

rschaten%

Das habe ich aus dem Unix Haters Handbook, ich hätte nicht gedacht dass das wirklich funktioniert…