(Rund um die...) Kleiner interpreter



  • wenn du nicht nur wilde Hackerei machen willst, besorg dir mal ein Buch über Compilerbau



  • [quote=Bashar]wenn du nicht nur wilde Hackerei machen willst, besorg dir mal ein Buch über Compilerbau "
    [/quote]

    wie meinst du das?



  • Flipcode is wohl down... vor ner Stunde gings noch



  • achso.....



  • Rundum FAQ lesen Compilerbau/Parserbau Links

    (btw. passt das IMHO eh besser nach Rundum :))



  • Ich will doch nicht nen Compiler schrieben nur nen billigen interpreter wie QBasic...



  • aber die theorie dahinter (compiler vs. interpreter) ist dieselbe... zumindest in großen teilen (scanner & parser, code-generierung ist nicht vorhanden *g*). und wenn du jittest, dann besteht der unterschied nur noch darin, dass du in den speicher compilierst 🙂
    ein interpreter der nur die anweisung 'ausgabe' kennt ist aber nicht unbedingt sinnvoll :D.



  • wenn du ne eingabe machst: Hallo
    und das in ne vabriale speicherst und wieder ausgiebst hast du das net compiliert 😛



  • Ehm

    nur nen billigen interpreter wie QBasic...

    Ich weiß ja nich... Also ich hab lange mit QB gearbeite und ich denke nicht, dass QB nur son billiger Interpreter ist. OK, es ist ein Interpreter, aber auf keinen Fall billig. Es ist zwar langsam, aber trotzdem funzt es einwandfrei und es ist bei mir erst zwei mal in 5 Jahren abgestürzt. Und, wenn es so billig ist, kannste ja mal versuchen, den QB-Interpreter nachzubauen...

    Gruß, Maxi



  • Probier doch einfach mal ein bisschen. Ich hab für mein Spiel eine kleine Scripting-Sprache entwickelt, mit der ich z.B. die KI steuern kann. Dazu lese ich einfach zeilenweise eine Datei ein, und analysiere jede Zeile. Jede Zeile hat die Form

    FUNKTIONSNAME(PARAM1,PARAM2,...,PARAMN);
    

    Jetzt teile ich den String auf in Funktionsname und die einzelnen parameter und speichere das ganze in einer Klasse CScriptCommand. Ein Skript ist also dann nichts als eine Sammlung dieser einzelnen Kommandos. Und wenn der Skript ausgeführt werden soll, muss ich einfach anhand des Funktionsnames überprüfen, welche Aktion gewünscht ist und kann das dann veranlassen...

    Ich hoffe, dir einen kleinen Denkanstoß gegeben haben zu können... 🙄

    Mfg, smasher1985

    [ Dieser Beitrag wurde am 07.04.2003 um 22:02 Uhr von smasher1985 editiert. ]


Anmelden zum Antworten