Zum Hauptinhalt springen
Zurück zum Blog

Varg - Wie ich eine KI-Programmiersprache gebaut habe

Wolf Eric Lenk
· 19. March 2026 · 4 Min. Lesezeit
Varg - Wie ich eine KI-Programmiersprache gebaut habe

Warum die Welt (vielleicht) eine neue Programmiersprache braucht

Manchmal startet man ein Projekt und fragt sich mittendrin: "Ist das eigentlich Größenwahn?" Genau das dachte ich mir, als ich anfing, Varg zu entwickeln. Eine eigene Programmiersprache bauen? Ernsthaft?

Aber lasst mich kurz ausholen. Als Entwickler habe ich in letzter Zeit viel mit KI-Agenten und LLMs experimentiert. Tools wie Cursor und Claude-Code sind genial, aber wenn es darum geht, eigene autonome Systeme zu bauen, stieß ich schnell an Grenzen. Python ist zwar der aktuelle Standard für alles was mit KI zu tun hat, aber es ist oft langsam und – wenn ich ehrlich bin – ein ziemlicher Albtraum, wenn es um ein schlankes, sicheres Deployment geht. Rust hingegen ist pfeilschnell und sicher, aber der Einstieg kann unglaublich zäh sein.

Ich wollte etwas dazwischen: Eine Sprache, die sich vertraut anfühlt wie C#, aber die Performance und Sicherheit von Rust bietet. Und vor allem eine Sprache, die autonome KI-Agenten nicht als nachträgliches Feature, sondern als echtes Kernkonzept behandelt.

Das war die Geburtsstunde von Varg.


Was Varg anders macht

Die Idee hinter Varg ist simpel: Code schreiben, der direkt für KI-Agenten optimiert ist. Statt für jeden kleinen Handgriff riesige Frameworks und Bibliotheken importieren zu müssen, bringt Varg die wichtigsten Werkzeuge direkt mit.

Ein paar Highlights, die mir bei der Entwicklung besonders wichtig waren:

  • Eingebautes Aktor-Modell: Agenten kommunizieren asynchron über Nachrichten (spawn, send, request). Das macht Multitasking für KIs extrem einfach.
  • Native KI-Typen: Prompts, LLM-Aufrufe und RAG-Mechanismen (Retrieval-Augmented Generation) sind direkt in die Syntax eingebaut.
  • Sicherheit durch OCAP: Das war mir das allerwichtigste Feature. Ein KI-Agent, der völlig autonom auf einem Server läuft, darf nicht einfach unkontrolliert sensible Dateien lesen oder Shell-Befehle ausführen. In Varg muss jede privilegierte Aktion (wie Datei- oder Netzwerkzugriff) durch ein spezielles Capability-Token legitimiert werden. Das Geniale daran: Der Compiler prüft das bereits beim Kompilieren. Hackt jemand den Agenten, bleibt der Server trotzdem sicher, weil der Agent die nötigen "Schlüssel" für Schandtaten gar nicht erst besitzt.

Ein kurzer Einblick: Wie sieht Varg-Code aus?

Ziemlich vertraut! Hier ist ein kleines, aber vollständiges Beispiel für einen simplen Wetter-Agenten:

agent WeatherBot {
    // Beachte das "NetworkAccess"-Token, das für den fetch() zwingend benötigt wird!
    public async string GetForecast(string city, NetworkAccess net) {
        var resp = fetch($"https://api.weather.com/{city}", "GET")?;
        var json = json_parse(resp)?;
        var temp = json_get(json, "/main/temp");
        
        return $"In {city} sind es {temp} Grad Celsius.";
    }

    public void Run() {
        unsafe {
            var net = NetworkAccess {}; 
            var forecast = self.GetForecast("Berlin", net);
            print forecast;
        }
    }
}

Es sieht fast aus wie modernes C# oder TypeScript, nimmt einem unter der Haube aber extrem viel Arbeit ab.


Performance trifft auf Bequemlichkeit

Das Coole an Varg ist der Compiler-Workflow. Wenn man Varg-Code kompiliert, wird er nicht interpretiert, sondern im Hintergrund in nativen Rust-Code übersetzt (Transpiling). Danach baut der Rust-Compiler (cargo) daraus eine echte ausführbare Datei.

Das Ergebnis? Eine winzige Binary-Datei (oft nur rund 1.7 Megabyte groß!), die absolut keine Laufzeitumgebung, kein Node.js, kein Python und keinen Garbage Collector braucht. Einfach auf den Server kopieren und ausführen.

In meinen eigenen Benchmarks ist Varg bei reinen Berechnungen teilweise bis zu 46-mal schneller als Python. Gleichzeitig benötigt man durch die vielen eingebauten Standardfunktionen (wie JSON-Parsing, Tracing oder HTTP-Server) viel weniger Codezeilen für denselben Agenten.


Ein komplettes Ökosystem out-of-the-box

Mittlerweile hat das Projekt eine ziemliche Eigendynamik entwickelt. Die Sprache ist längst nicht mehr nur ein Parser, sondern bringt eine prall gefüllte Standardbibliothek mit echten, performanten Implementierungen mit.

Wer einen Agenten baut, hat out-of-the-box Zugriff auf:

  • Einen asynchronen HTTP-Server
  • Direkte SQLite-Datenbankanbindung
  • Integrierte Knowledge-Graph-Engine (für komplexe Wissensnetze)
  • Vektorspeicher für Ähnlichkeitssuchen
  • Und sogar ein dreistufiges "Agenten-Gedächtnis" (bestehend aus Kurzzeitgedächtnis, episodischem Vektorspeicher und semantischem Graphen)

Das bedeutet: Keine endlosen Abhängigkeiten und Dependency-Hölle mehr, nur um einen Bot zum Laufen zu bringen, der sich Dinge merken kann.


Wie geht es weiter?

Varg ist aktuell natürlich noch in der aktiven Entwicklung (aktuell bin ich bei "Wave 26" mit knapp 750 rein positiven Unit-Tests). Es ist sicherlich noch ein gutes Stück Weg, bis ein Milliardenkonzern seine komplette Infrastruktur darauf umstellt – aber für eigene Projekte, smarte CLI-Tools, API-Backends und RAG-Lösungen funktioniert es bereits fantastisch.

Ich bin unglaublich stolz auf das, was Varg bisher leistet, und extrem gespannt, wo die Reise hingeht.

Wer sich für das Projekt interessiert oder sogar eigene autonome KI-Agenten in Varg schreiben will – das Binary gibt es auf der Release-Seite.

GitHub Repository

Gute Jagd im digitalen Wald!

Wolf

Eric Lenk

Web-Entwickler mit Fokus auf ASP.NET, moderne Frontends und KI-Integration. Immer auf der Jagd nach dem nächsten spannenden Projekt.

Achievement!