Voodoo Compiler

Szoftver screenshot:
Voodoo Compiler
Szoftver adatai:
Változat: 1.1.1
Feltöltés dátuma: 20 Feb 15
Fejlesztő: Robbert Haarman
Engedély: Ingyenes
Népszerűség: 6

Rating: nan/5 (Total Votes: 0)

Voodoo Compiler egy megvalósítása a Voodoo programozási nyelv. & Nbsp; A Voodoo programozási nyelv egy alacsony szintű programozási nyelv, referáló mint a platform utasításkészletet és hívja egyezmények, de egyébként így a programozó szabad csinálni semmit.
Voodoo Compiler van írva Ruby és generál kódot i386-kompatibilis, AMD64, és MIPS CPU-k. Támogatást további cél CPU-k a tervek szerint a jövőben.
Használat
Két fő módja, hogy használja a Voodoo fordító: a futás a voodooc programot, vagy használja a Ruby API.
A voodooc programot állít össze a Voodoo forrás fájlokat. Használata leírt voodooc.1 manpage, a terjesztésben. Az alábbiakban egy példa arra, hogyan voodooc lehet használni, hogy hozzon létre egy végrehajtható hello from a forrás file hello.voo:
$ Voodooc hello.voo
$ Cc hello.o -o helló
$ ./hello
Helló Világ!
Egy végrehajtását hello.voo megtalálható a könyvtárban teszt a forgalmazás.
A második módja, hogy használja a Voodoo-fordító segítségével azt a Ruby programot. Ezt fel lehet használni, például, generálni kódot a cél platform, anélkül, hogy hozzon létre egy .voo fájlt. Az alábbiakban egy példát, amely létrehoz egy objektumot nevű fájlt fact.o, amely meghatározza a függvény tény, amely kiszámítja faktoriális:
igényelnek "voodoo"
generátor = Voodoo :: CodeGenerator.get_generator: építészet =>: i386,
& Nbsp;: format =>: elf
generator.export: tény,
generator.add_function_label: tény,
generator.add_function [: n],
& Nbsp; [: ifle, [: n, 1],
& Nbsp; #, majd a
& Nbsp; [[: visszatérés, 1]],
& Nbsp; # másnak
& Nbsp; [[: hagyja,: x,: sub,: n, 1],
& Nbsp; [: set,: x,: hívja,: Tény, hogy: x],
& Nbsp; [vissza és: mul,: n,: x]]]
File.open ("fact.o", "w") {| outfile | generator.write outfile}
A Voodoo fordító API, amely a rendelkezésre álló Ruby programok ismerteti az API dokumentációt.

Mi az új ebben a kiadásban:

    < li> Használható Ruby 1.9, amellett, hogy Ruby 1.8; hogy tesztet most beszámol a múlt, és nem tesztek.
  • A sok-Vars teszt osztották sok-argumentum, sok-args-farkát, és sok-helyiek.

Mi az új a 1.0.1 verzió:

  • Ez a verzió hozzáteszi számos fejlesztést, hogy az elemző , amely most beszámol forráskód helyszínen minden hibát és jelentheti több hibát benne blokkok, funkciók, és feltételeihez. Több tesztet az elemző is került.
  • Ez a kiadás javít elemzési hibát a nyilatkozatok és észrevételeket és olyan probléma, amely miatt az elemző nem az üres bemeneten.

Mi az új 1.0.0:

  • ARM-generátor: A fordító most generálni szerelés és ELF tárgykódja az ARM architektúra.
  • Továbbfejlesztett hibajelentés: több hibát észlel, és a hibákat jelenti a könnyebb megérteni a hibaüzeneteket.
  • érvényesítése modul: ez az új modul segítségével lehet érvényesíteni generált Voodoo kódot. Ezt alkalmazzák az értelmező által érvényesíteni értelmezett kódot.
  • Feature interface: funkciók végrehajtására lehet kérdezni mind programozott, és a parancssorból.

Mi az új verzióban 0.7.0:

  • Blocks: ezek biztosítják körök, ahol a helyi változók lehet definiálni let. Az ilyen változók léteznek végétől a let utasítás, amíg a végén a blokk. Blocks előfordulhatnak olyan helyeken, ahol egy akció is előfordulhat. Ezek kezdődött blokk és végül záróblokk.
  • láncolva conditionals: most már lehetséges, hogy írjon & quot; else if & quot ;, Ahelyett, hogy a beágyazott, ha a else.
  • Shift és forgassuk: változtatására irányuló tevékenységekkel (ASR, BSR shl, SHR) és forgassa akciók (rol, ror) bővült.
  • Return érték nélkül: a visszaállás már fel lehet használni megadása nélkül kifejezést, hogy értékelje. Ez okozza egy nem definiált értéket adja meg a funkciót.

Mi az új verzióban 0.6.3:

  • Ez a kiadás at-kifejezések: elé egy címkét, helyi változó, vagy egész egy @ értéke kezelik egy címet, és a szó tárolt azon a címen adja vissza.
  • Továbbá, néhány hibát fedeztek fel az utat húrok voltak kódolva generált assembly kódot.
  • Ezek hibát kijavítottak, valamint verziója 0.6.3 már kezeli húrok tartalmazza az összes lehetséges 256 byte helyesen lesznek.

Mi az új verzióban 0.6.2:

  • Ez a kiadás javít hibákat a megvalósítások beállítások szó i386 és amd64 és hozzáteszi, tesztek arra az esetre, hogy korábban nem működött megfelelően.

Hasonló program

Ubucompilator
Ubucompilator

12 May 15

Project Fortress
Project Fortress

2 Jun 15

autogen.sh
autogen.sh

20 Feb 15

Bocfel
Bocfel

17 Feb 15

Hozzászólások a Voodoo Compiler

Hozzászólás nem található
Megjegyzés hozzáadása
Kapcsolja be a képeket!