Konvertieren von VB(Script) nach JavaScript oder C#

Es gibt einige Online-Tools um zwischen VBScript und C# und anderen Sprachen zu konvertieren:

Ich bräuchte so was als Bibliothek um es in meinen eigenen Programmen zu verwenden. (Mir ist klar, dass das nicht 100% fehlerfrei gehen kann).

Nach meinem Verständnis muss darin ein Lexer/Tokenizer enthalten sein.

Developer Fusion verweist auf SharpDevelop als deren Entwicklerbasis und im Source-Download habe ich eine Datei cs-tokenizer.cs gefunden.

Trotzdem finde ich irgendwie keinen Einstieg.

Meine Frage:

Gibt es fertige Bibliotheken um zwischen VB(Script) und JavaScript zu konvertieren, bzw. Quelltexte, die ich als Basis für einen eigenen Konverter nutzen kann?

Die Frage ist was du genau tun willst. Willst du einen echten Transpiler haben oder einfach nur Code ausführen, der sich nahezu ähnlich verhält?

Fakt ist, dass man C# durchaus in JavaScript verwandeln könnte, der entsprechende Code jedoch nicht sehr schön ist. Und natürlich weit von dem entfernt ist, was „normal“ so geschrieben wird. Ein neueres Projekt für C# -> JavaScript basiert auf Roslyn und erzeugt ansich ganz schönen Code. duoco.de

Es gibt natürlich auch noch weitere Projekte, aber der Vorteil an duocode ist, dass das Ergebnis einigermaßen lesbar ist.

Im Allgemeinen wäre das, was duocode (und mittlerweile auch andere) machen, auch der beste Weg. Roslyn verwenden um an den AST zu kommen, und diesen dann in entsprechende Targets umzuwandeln. Roslyn ist OSS und erzeugt einen zu 100% validaten AST aus C# (oder auch VB) code.

1 „Gefällt mir“

Das Ziel war, bestehenden Legacy-vbscript-Code möglichst mit wenigen Fehler nach JavaScript zu migrieren (einmalig).

Das kann gerne noch kleinere Fehler enthalten. Muss am Ende eh nochmals ein Mensch drüber schauen. Geht nur darum, dem Mensch möglichst viel Arbeit schon automatisiert abzunehmen.

(Hintergrund: die Scripting-Engine in http://www.Zeta-Producer.com haben wir auf JavaScript umgestellt)