Voodoo Compiler

Screenshot der Software:
Voodoo Compiler
Softwarebeschreibung:
Version: 1.1.1
Upload-Datum: 20 Feb 15
Entwickler: Robbert Haarman
Lizenz: Frei
Popularität: 6

Rating: nan/5 (Total Votes: 0)

Voodoo-Compiler ist eine Implementierung des Voodoo-Programmiersprache. & Nbsp; Die Voodoo-Programmiersprache ist ein Low-Level-Programmiersprache, die Abstraktion über Anweisung der Plattform eingestellt und Aufrufkonventionen, aber ansonsten so dass die Programmierer die Freiheit, alles zu tun.
Voodoo Compiler ist in Ruby geschrieben und generiert Code für i386-kompatiblen, AMD64- und MIPS-CPUs. Unterstützung für weitere Ziel CPUs ist für die Zukunft geplant.
Verwendung
Es gibt im Wesentlichen zwei Möglichkeiten, um die Voodoo-Compiler verwenden: indem Sie das voodooc Programm, oder mit Hilfe der Ruby-API.
Die voodooc Programm erstellt eine Voodoo-Quelldateien. Seine Verwendung in der voodooc.1 Manpage bei der Verteilung beschrieben, enthalten. Im Folgenden ist ein Beispiel dafür, wie voodooc verwendet, um eine ausführbare hallo aus einer Quelldatei hello.voo erstellen:
$ Voodooc hello.voo
$ Cc hello.o -o hallo
$ ./hello
Hallo Welt!
Eine Implementierung hello.voo finden Sie im Verzeichnis Test der Distribution.
Die zweite Möglichkeit, die Voodoo-Compiler verwenden, indem Sie es von einem Ruby-Programm. Dies kann verwendet werden, beispielsweise, um Code für die Zielplattform, ohne eine Datei zu erstellen .voo erzeugen. Im Folgenden ist ein Beispiel, das eine Objektdatei namens fact.o schafft, in dem der Begriff Funktion Tatsache, die Fakultäten berechnet:
require 'Voodoo'
Generator = Voodoo :: CodeGenerator.get_generator: Architektur =>: i386,
& Nbsp;: format =>: elf
generator.export: Tatsache
generator.add_function_label: Tatsache
generator.add_function [: n]
& Nbsp; [: ifle, [: n, 1],
& Nbsp; # dann
& Nbsp; [[: Rückkehr 1]],
& Nbsp; # sonst
& Nbsp; [[: lassen,: x,: Sub: n, 1],
& Nbsp; [: Set: x,: Anruf,: Tatsächlich: x],
& Nbsp; [: Rückkehr: mul,: n,: x]]]
File.open ('fact.o', 'w') {| outfile | generator.write outfile}
Die Voodoo-Compiler-API, um Ruby-Programme eine verfügbar ist in der API-Dokumentation

Was ist neu in dieser Pressemitteilung:.

    < li> Die Kompatibilität mit Ruby 1.9, zusätzlich zu Ruby 1.8; machen Prüfberichte nun die Anzahl der erfolgreich oder nicht erfolgreich Tests.
  • Die viel vars Test wurde in viele-args aufgeteilt, viele-args-Schwanz und viel Einheimischen.

Was ist neu in Version 1.0.1:

  • Diese Version bietet eine Reihe von Verbesserungen an den Parser , die nun berichtet Quellcode Standorten für alle Fehler und kann mehrere Fehler innerhalb Blöcke, Funktionen und Bedingungen Bericht zu erstatten. Mehrere Tests für den Parser wurden hinzugefügt.
  • Diese Version behebt einen Parser-Fehler auf Erklärungen mit anschließender Kommentare und ein Problem, das der Parser auf leere Eingabefehler verursacht hat.

Was ist neu in der Version 1.0.0:

  • ARM-Code-Generator: Der Compiler kann jetzt generieren Montage und ELF Objektcode für die ARM-Architektur.
  • Verbesserte Fehlerberichterstattung:. Weitere Fehler werden erkannt, und Fehler werden in einfacher berichtet, dass Fehlermeldungen verstehen
  • Validator-Modul: Dieses neue Modul können erzeugt Voodoo-Code validieren. Es wird von der Parser verwendet werden, um analysierten Code zu bestätigen.
  • Feature-Schnittstelle: Funktionen der Umsetzung kann sowohl programmatisch und in der Befehlszeile abgefragt werden
  • .

Was ist neu in Version 0.7.0:

  • Blocks: diese bieten Bereiche, in denen lokale Variablen kann let definiert werden. Solche Variablen bestehen aus dem Ende des let Statement bis zum Ende des Blocks. Die Blöcke können in jedem Ort, an dem eine Aktion stattfinden kann auftreten. Sie sind mit Block begann und endete mit Ende-Block.
  • Chained conditionals: Es ist nun möglich, schreiben Sie & quot; else if & quot ;, anstatt erfordern eine verschachtelte, wenn in der else-Klausel
  • .
  • die Umschalttaste gedrückt und drehen: Verlagerungsaktionen (asr, bsr, SHL, SHR) und drehen Sie Aktionen (rol, ror) wurden hinzugefügt
  • .
  • Zurück ohne Wert: Rückkehr kann nun ohne Angabe eines auszuwertenden Ausdruck verwendet werden. Dies bewirkt, dass ein nicht definierter Wert von der Funktion zurückgegeben werden.

Was ist neu in Version 0.6.3:

  • Diese Version bietet at-Ausdrücke: Durch Voranstellen ein Etikett, lokale Variable oder Zahl mit einem @ wird der Wert als eine Adresse behandelt werden, und das Wort an der Adresse gespeichert ist, zurückgeführt.
  • Zusätzlich wurden einige Fehler in der Art, wie Saiten aufgedeckt wurden erzeugten Assembler-Code codiert ist.
  • Diese Fehler wurden behoben, und die Version 0.6.3 jetzt behandelt Strings alle 256 möglichen Byte-Werte richtig enthält.

Was ist neu in Version 0.6.2:

  • Diese Version behebt Fehler in den Implementierungen von Set- Wort für i386 und AMD64 und fügt Tests für die Fälle, die bisher nicht korrekt funktionieren.

Ähnliche Software

GCC
GCC

16 Aug 18

Arcueid
Arcueid

20 Feb 15

Kommentare zu Voodoo Compiler

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!