Ergebnis 1 bis 20 von 20

Thema: <[<]>[.>]\0Esoterische Programmiersprachen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    <[<]>[.>]\0Esoterische Programmiersprachen

    Fast jeder kennt sie, viele lieben sie: esoterische Programmiersprachen, mit denen man zwar nicht viel praktisches anstellen kann, die aber trotzdem irgendwie cool sind.

    Mein momentaner Favorit ist Taxi, deren Code aussieht, wie die Fahranweisungen für einen Taxifahrer - Benzinverbrauch eingeschlossen. Im Taxi haben drei Fahrgäste (Variablen) Platz, man kann definieren, wo Fahrgäste aufgenommen und abgeladen werden und jede Funktion (addieren, subtrahieren, String ausgeben) entspricht einem Ort auf dem Stadtplan.

    Code (Taxi):
    "Hello, World!" is waiting at the Writer's Depot. 
    Go to Writer's Depot: west 1st left, 2nd right, 1st left, 2nd left. 
    Pickup a passenger going to the Post Office. 
    Go to the Post Office: north 1st right, 2nd right, 1st left. 
    Go to the Taxi Garage: north 1st right, 1st left, 1st right.


    Das ist ein vollständiges (und wahrscheinlich das kürzest mögliche) Hello World in Taxi. Im Writer's Depot kann man Strings definieren, das Post Office stellt stdin/stdout dar und Taxi Garage ist der Start- und Endpunkt jedes Programms.

    Es gibt tatsächlich ein paar sinnvolle Programme, die in Taxi geschrieben sind, aber alles, was komplexer ist, als ein Taschenrechner, produziert laaaaangen Code. Unter anderem, weil man bei Verzweigungen (siehe Website) immer darauf achten muss, dass der Tank auf jeden Fall ausreichend gefüllt ist.

    Wenn es einer von euch schafft, einen vollständigen Taxi-Interpreter in Taxi zu schreiben, geb ich demjenigen einen Drink aus, versprochen

    P.S.: wenn man "\0" durch ein Nullbyte ersetzt, ist das Topic ein vollständig funktionsfähiges Programm in einem Brainfuckdialekt, bei dem der Code mit im adressierbaren Arbeitsspeicher liegt und dessen Pointer am Anfang auf dem ersten freien Byte nach dem Code steht.

  2. #2
    Ich finde Brainfuck2D ja recht cool, das ist selbst für esoterische Sprachen noch esoterisch. XD Und irgendwo müsste hier sogar noch ein BF2D-Happy-Birthday-Programm von mir rumfliegen. ^^"

    Hier ein Beispiel-Hello-World.

    Die Befehle sind die gleichen wie in Brainfuck, werden jedoch statt durch normale Zeichen durch die Richtungsänderungen eines virtuellen "Fadens", der durch Nicht-Whitespace-Zeichen vorgegeben wird, angegeben.

  3. #3
    BF2D ist einfach nur noch krank. Schon allein, weil man das mit keinem gängigen Editor ohne massiven Aufwand schreiben kann.

  4. #4
    Ich finds ja stellenweise geil, was für ein Riesenaufwand teilweise betrieben wird, um z.B. IDEs und komplexe Programme für bzw. in esoterische Programmiersprache zu erstellen. Wer "professionell" BrainFuck programmieren will, sollte sich mal Brainfuck Developer ansehen . Irgendwo habe ich auch noch ein Game of Life, geschrieben in BrainFuck, gesehen...

    Ansonsten ist mir meine Zeit meistens zu schade, um mich mit esoterischen Programmiersprachen wirklich zu beschäftigen^^. BrainFuck ist die einzige die ich mir angetan habe, weil es so ziemlich die einfachste der mir bekannten esoterischen Sprachen ist... Wenn man sich einen ganzen Tag damit beschäftigt, schwirren einem beim Zu-Bett-Gehen und beim Aufstehen lauter Plusse, Minusse und Klammern im Kopf herum, und DAS will ich nie wieder erleben, da bekommt man Kopfschmerzen^^.

  5. #5
    Zitat Zitat von DFYX Beitrag anzeigen
    BF2D ist einfach nur noch krank. Schon allein, weil man das mit keinem gängigen Editor ohne massiven Aufwand schreiben kann.
    Ach, man muss ja nur alles erst mit Leerzeichen zuhauen und dann auf Überschreiben stellen. ^^" Viel einfacher geht's eigentlich nicht mehr, wenn man sich nicht gerade was bastelt um PNGs in BF2D-Programme umzuwandeln. XD
    Naja, außerdem soll's natürlich auch nicht zu einfach sein, sonst kann man ja auch Python nehmen. ;O

  6. #6
    gibts keine BF -> BF2D dingse? Sollte doch recht einfach umzusetzen sein?
    (So wie eigentlich alles, das nach festen immer gleichen regeln funktioniert)
    Oder gibt es da unüberwindbare probleme?

    Ansonsten finde ich ja Ook! sympatischer als BF hat irgendwie schöneren und melodischeren Code.
    Ein Beispiel für Hello World (laut Wiki)

    Code:
    Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
    Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
    Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.
    Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
    Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
    Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
    Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
    Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.

  7. #7
    Ook! rockt
    Mein Favorit in Sachen Esoterik ist aber definitiv SPL

  8. #8
    Ja, Shakespeare Programming Language ist schon sehr sehr nett ...
    Auch wenn ich die Goto Statement Konstruktion (bzw generell die Syntax) etwas relaxieren wuerde.

    Code:
    A Neverending Story.
    
    Caliban, an ugly dwarf.
    
    Act I: A strange monologue. 
    
    Scene I: In the middle of the forrest.
    
    [Enter Caliban]
    
    Caliban: 
    I am as stupid as the sum of an ingenerouse arrogant 
    incompetent malevolent infected idiot and a fart
    multiplied by a pig. But I wouldn't like to be as disgusting
    as myself multiplied by a maggot. If I could only
    speak my mind. So maybe I should start all over again. 
    
    [Exeunt]

    Geändert von Ineluki (24.09.2009 um 20:40 Uhr)

  9. #9
    Code:
    HelloWorld is a zombie
    summon
    	task SayHello
    		say "Hello World!"
    	animate
    animate
    oder
    Code:
    Zombie1 is a zombie
    summon
    	remember 1
    bind
    
    Zombie2 is a zombie
    summon
    	remember 1
    bind
    
    FibonacciZombie is a zombie
    summon
    	remember 0
    	task SayFibonaccis
    		shamble
    			say moan Zombie1
    			say moan Zombie2
    			remember Zombie1 moan Zombie1 moan Zombie2
    			remember Zombie2 moan Zombie1 moan Zombie2
    			remember moan 2
    		until remembering 100
    	animate
    animate
    XD
    http://www.dangermouse.net/esoteric/zombie.html


    Nach Shakespeare Programming Language einer meiner Liebsten Prog.sprachen.

  10. #10
    Ich fand Whitespace immer ganz amüsant - aber nun muß ich zugeben, dass die SPL das natürlich bei weitem schlägt, sehr stylisch :-)

  11. #11
    Code:
    Say hello.
    <3

    EDIT: Schade, der Code wird getrimmt -> Whitespace wird gelöscht.^^

  12. #12
    Zombie find ich relativ langweilig. Ist halt eine ganz normale Programmiersprache mit veränderten Keywords. Da ist sowas wie Piet lustiger.

  13. #13
    Also irgendwie würde ich ja wahnsinnig werden mit SPL oder BF. @_@
    Ok, Befunge ist auch ziemlich krass.

  14. #14
    BF ist doch ziehmlich Assemblernah, nur recht umstaendlich.

  15. #15
    Zitat Zitat von Ineluki Beitrag anzeigen
    BF ist doch ziehmlich Assemblernah, nur recht umstaendlich.
    Ich weiß nicht, also ich finde Assembler ungleich übersichtlicher/angenehmer als BF. o_O"
    Alleine dass man keine Trennung zwischen Daten und Code, oder Registern und Speicher hat, ist extrem nervig. In Assembler habe ich schon durchaus sinnvolles geschrieben (unter anderem für eine Java VM), aber in BF kann ich mir nicht vorstellen, dass das möglich ist.
    Assembler ist für BF, was C für Assembler ist.

  16. #16
    Ich bezog mich nicht darauf, wie gut es sich schreiben laesst, sondern dass die Befehle in ein Assemblersubset fast bijektiv abbildbar sind.

    Ausserdem hat doch klassisches BF eine absolute Trennung zwischen Daten und Code, was Assembler nicht hat. Oo

    Von der Schreibung her hast du allerdings recht. Es ist viel einfacher, in Assembler zu schreiben, als in BF.

  17. #17
    Zitat Zitat von Ineluki Beitrag anzeigen
    Ich bezog mich nicht darauf, wie gut es sich schreiben laesst, sondern dass die Befehle in ein Assemblersubset fast bijektiv abbildbar sind.
    Naja, eben Subset, also eigentlich einfach deutlich schlechter. Aber vielleicht habe ich auch einfach nur "~nah" falsch aufgefasst.
    Zitat Zitat
    Ausserdem hat doch klassisches BF eine absolute Trennung zwischen Daten und Code, was Assembler nicht hat. Oo
    Ahja, das war natürlich Schwachsinn. ^^"

  18. #18
    Zitat Zitat von drunken monkey
    Assembler ist für BF, was C für Assembler ist.
    Kann das jemand freundlicherweise kurz erklären?

  19. #19
    Zitat Zitat von elsen Beitrag anzeigen
    Kann das jemand freundlicherweise kurz erklären?
    Im Vergleich zu Assembler ist C eine Hochsprache, im Vergleich zu Brainfuck ist Assembler schon eine.

  20. #20
    ah' so... danke.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •