Laden...

BefunGen - ein Befunge code generator

Erstellt von Mikescher vor 9 Jahren Letzter Beitrag vor 9 Jahren 2.323 Views
Mikescher Themenstarter:in
2 Beiträge seit 2014
vor 9 Jahren
BefunGen - ein Befunge code generator

Hallo Community,

vielleicht kennen einige von euch die esoterische Programmiersprache Befunge. Ich beschäftige mich jetzt schon eine Weile aus Spass mit Befunge und habe vor einer Weile angefangen _BefunGen _zu schreiben.

Die Idee ist dass man in einer ganz "normalen" c-ähnlichen Sprache Code schreibt und dieser dann zu Befunge-Code compiliert wird.
Dass ganze funktioniert auch wirklich und man kann ziemlich komplexe Befunge Programme auf diese Weise erzweugen.

Hier zum Beispiel eine Implementation von Käsekästchen (mit KI): http://pastebin.com/raw.php?i=1d2U399C

Dazu habe ich (gezwungenermaßen) auch noch eine kleine IDE, einen schnellen Interpreter und ein Syntax-highlighting modul geschreiben.

Wenn sich dass jemand ansehen will (oder es sogar mal ausprobieren 😄 ),
mehr Infos gibts auf meiner Website, und das ganze ist auch auf Github

Grüße
~ Mike

60 Beiträge seit 2010
vor 9 Jahren

cool wäre jetzt noch, das Ganze in die Originalspezifikation zu zwängen (25x80)

Soweit ich weiss, war original nur 25 Zeilen a 80 Zeichen erlaubt, also DOS konsolengrösse. Auch gibt es den Befunge-98 Standard, der dir vielleicht noch gefällt, da das koordinatensystem einiges grösser ist und der Befehlssatz erweitert wurde: Funge-98 Final Specification

**:::

Mikescher Themenstarter:in
2 Beiträge seit 2014
vor 9 Jahren

@Ayra: Ja - irgendwo auf der Website hab ich das auch geschrieben.
"Praktisch" wird hier wohl Befunge-98 code erstellt, aber das einzige Befunge-98 Feature das ich nutze ist die unbegrenzte Gridgröße.

Reines Befunge-93 hat einfach das Problem das es nicht Turing-complete ist und man größere Programme darin nicht darstellen kann (was ja irgendwo das besondere der ganzen Sache ist, also dass man große Programme erstellen kann).

Außerdem bin ich immernoch dabei das ganze mehr zu komprimieren - auch wenn das schwerer ist als es vielleicht aussieht, vorallem bei Sachen wie rekursive Methodenaufrufe etc. hatte ich starke Probleme das in Befunge darzustellen 😄

MfG Mike
(und thx dass du dir mein Programm angesehen hast 😃 )