#! | |
---|---|
• index Code | eso |
Esoterisches HackenWas sich hier findet entspringt der wunderbaren Welt der esoterischen Programmierung, wer damit nichts anfangen kann findet hier einen kleinen Einstieg. Natürlich steht aller Code auf dieser Seite, der von mir stammt unter der GPLArgh!Argh! ist mein erster Versuch eine Sprache zu entwerfen, die den Geist esoterischer Programmiersprachen in sich trägt.Argh! bietet alles was man von einer ordendlichen Sprache erwartet und noch mehr:
lllllllj lllj j 2 2 kD2lgj lelSHSph 1 j lDj k LSdSh1DRxXqlFk llDkDie vollständige Spezifikation von Argh! und Aargh! kann man hier nachlesen (englisch). Try it now!Hier kann Aargh! mit einem in Javascript geschriebenen Interpreter direkt im Browser ausprobiert werden.Der Quellcode ist unter http://hg.intevation.org/argh/js/ zu finden. TutorialIn meinem blog habe ich einer Reihe Argh! Tutorials (in Englisch) veröffentlicht.Downloadargh-0.2.3.tgzDas Archiv enthält einen Argh! und einen Aargh! Interpreter (in C), die Sprach-Spezifikation, einen Argh! Mode für GNU Emacs, einige Beispiel Programme sowie zusätzliche Beispiele und Tools die andere Autoren zu Argh! beigesteuert haben. Der Argh! Mode für Emacs enthält einen vollständigen Aargh! Interpreter/Debugger, mit dem Argh! code interaktiv ausgeführt und die Arbeit des Argh!-Interpreters visualisiert werden kann. Das öffentliche Mercurial Argh! Repository ist unter http://hg.intevation.org/argh/ zu finden. Über Kommentare, Bugreports und natürlich Argh!-Programme jeder Art würde ich mich sehr freuen. Laurent Vogel hat einen Argh! debugger in Perl geschrieben: argh.pl Simeon Visser arbeitet an einen Argh! Interpreter in Haskell: arghwxhaskell BrainFuckBF von Urban Müller ist wohl eine der bekanntesten und beliebtesten esoterischen Programmiersprechen. Gute Infos zu BF finden sich z.B. hier.yabfi2Yet Another BrainFuck Interpreter 2 ist ein von mir geschriebener BF Interpreter, der im Gegensatz zu den meisten anderen BF-Interpretern on-the-fly einige Optimierungen durchführt. Das macht ihn für einen Interpreter relativ flott. Der Quellcode: yabfi2.c steht natürlich unter der GPL.Die besten Ergebnisse erziehlt man mit reinem, unformatierten BF code, den man leicht mit folgendem Einzeiler erzeugen kann: cat $BF-SOURCE | tr -d -c '[],.<>+-' > $STRIPED-BF-SOURCE yabfi2 benutzt genauso wie sein Vorgänger mmap(2) und ist deshalb nicht sonderlich Portabel, sollte aber auf den meisten modernen Un*x-Systemen Problemlos laufen. yabfi2 wurde von mir bislang erfolgreich unter GNU/Linux, Irix 6.5, HP-UX 10.20 und Mac OS X 10.2 compiliert und getestet. bff von Alex Pankratov verfolgt die selbe Idee, yabfi2 war als ich es schrieb bei meinen Tests geringfügig schneller, mittlerweile ist aber bff ca. doppelt so schnell. Wo bff nicht läuft (ich hatte schwierigkeiten unter Mac OS X) könnte yabfi2 aber noch eine Alternative sein... Interessanter BF code, weitere Interpreter und Compiler u.f.m. findet sich im BrainFuck Archiv für Benchmarks habe ich unter anderem mandelbrot.b verwendet. |