Ante: eine kleine Sprache mit eigenem Compilerpfad
Eine sichere, einfache Systemsprache. Diese Tests enthalten Befehle, mit denen die Goldentests-Bibliothek den Ante-Compiler ausführt und seine Ausgabe für jede Datei mit der erwarteten Ausgabe in den Kommentaren dieser Datei vergleicht.
Auf einen Blick
- Was ist das?
- A safe, easy systems language. These tests have commands in them which the goldentests library uses to run the ante compiler and check its output for each file against the expected output contained within comments of that file.. Dieser Beitrag ordnet Umfang, konkrete Nutzung und dokumentierte Grenzen auf Deutsch ein.
- Für wen ist es gedacht?
- Geeignet ist Ante für Leser, deren Vorhaben zu den im README beschriebenen Eingaben, Abhängigkeiten und Ausgaben passt. Ungeeignet ist eine Übernahme als pauschale Zusage.
- Darf ich es kommerziell nutzen?
- Ja. MIT ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 6 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich Rust, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Ante: Der Zweck der Sprache 1
Ante ist eine low-level funktionale Sprache, deren README sichere gemeinsame Veränderbarkeit, Effekt-Handler und andere Funktionen als Erkundungsziele auflistet. Sie basiert auf Eigentums- und Ausleihregeln ähnlich wie Rust, aber das Projekt sagt, dass es Lesbarkeit anstrebt, indem es High-Level-Ansätze fördert, die später mit Low-Level-Details optimiert werden können. Die Repository-Metadaten listen die Sprache als Rust auf, was bedeutet, dass der Compiler selbst in Rust geschrieben ist. In der README erscheinen keine Versionsnummern oder Veröffentlichungsdaten. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Ein Beispiel der Syntax 2
Die README beginnt mit einer kurzen Ante-Funktion. Sie zeigt eine Funktion, die eine veränderliche Referenz auf ein Bar und eine geliehene Referenz auf einen generischen Typ mit einer Clone-Einschränkung nimmt. Der Körper ruft fail() wegen eines Fail-Effekts auf, übergibt dieselbe veränderliche Referenz zweimal an baz und klont den geliehenen Wert. Die Kommentare erklären, dass der Fail-Effekt fail erlaubt, dass Referenzen veränderlich und gleichzeitig aliasierbar sind, und dass Merkmale über implizite Argumente ausgedrückt werden, was erzwungene Newtype-Wrapper vermeidet. Hier ist das Beispiel genau wie gedruckt: foo (x: mut Bar) (y: ref a) {Clone a}: a can Fail = if not valid x then fail () baz x x clone y Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Den Compiler bauen 3
Um Ante aus dem Quellcode zu bauen, verlangt die README das Klonen mit Untermodulen, weil der Compiler von einer C-Datei namens aminicoro.c abhängt, die ohne sie nicht vorhanden ist. Der Build hat ein optionales LLVM-Backend, das LLVM 21.1 erfordert. Wenn diese Version mit Quellen installiert ist, sollte cargo install --path . direkt funktionieren. Andernfalls schlägt die README vor, LLVM 21.1 über einen Paketmanager auf Linux oder Mac zu installieren oder es mit CMake aus dem Quellcode zu bauen. Für einen Build ohne LLVM lautet der Befehl cargo install --path . --no-default-features, der das C-Backend verwendet. Die README sagt, dass ältere LLVM-Versionen nicht unterstützt werden. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Windows und LLVM 4
Windows-Builds sind aufwändiger. Die README weist darauf hin, dass LLVM bekanntermaßen schwierig unter Windows zu bauen ist und dass die offiziellen Binärdateien nicht die benötigten Bibliotheksdateien enthalten. Um das LLVM-Backend unter Windows zu verwenden, müssen Sie LLVM 21.1 mit CMake aus dem Quellcode bauen, was Visual Studio 2017 oder später erfordert. Die README empfiehlt, ohne LLVM zu bauen, es sei denn, Sie testen speziell das LLVM-Backend. Sie bietet auch ein CMake-Verfahren: Klonen Sie das LLVM-Projekt am Release/21.x-Zweig, erstellen Sie ein Build-Verzeichnis, führen Sie cmake aus, bauen und installieren Sie es, und setzen Sie LLVM_SYS_211_PREFIX auf das Build-Verzeichnis, bevor Sie cargo build ausführen. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Beitragen und testen 5
Der Compiler wird als in einem frühen Zustand beschrieben, und die README begrüßt Mitwirkende für bekannte Probleme, Verbesserungen und Standardbibliothekserweiterungen. Jede Datei im Codebase hat einen Modulkommentar, der den Zweck der Datei und verwendete Algorithmen erklärt; src/main.rs wird als Ausgangspunkt empfohlen. Pull-Requests müssen die Tests im Verzeichnis examples bestehen. Diese Tests verwenden die goldentests-Bibliothek, die den Ante-Compiler auf jeder Beispieldatei ausführt und die Ausgabe mit der erwarteten Ausgabe in Kommentaren vergleicht. Der Befehl zum Ausführen ist cargo test --test goldentests. Die README verlinkt auch eine Liste guter erster Issues. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Community und Unterstützung 6
Entwicklungsdiskussionen finden auf dem offiziellen Discord-Server statt, der in der README verlinkt ist. Es gibt auch ein Subreddit unter /r/ante, das die README als meist inaktiv beschreibt und hauptsächlich für Fragen zur Sprache statt für Entwicklungsupdates dient. Benutzer können Issues einreichen oder Fragen im Repository selbst stellen. Die README erwähnt keine anderen Supportkanäle oder Mailinglisten. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Ante: Lizenz 7
Ante ist unter der MIT-Lizenz veröffentlicht, Urheberrecht 2022 Jake Fecher. Die Lizenz erlaubt die Nutzung, Vervielfältigung, Änderung, Zusammenführung, Veröffentlichung, Verteilung, Unterlizenzierung und den Verkauf von Kopien der Software, vorbehaltlich der Aufnahme des Urheberrechts- und Genehmigungshinweises in allen Kopien oder wesentlichen Teilen. Die Software wird wie besehen bereitgestellt, ohne jegliche Gewährleistung. Die Lizenz befasst sich nicht mit Sicherheitslage, Supportverpflichtungen oder Produktionsreife. Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Diese Prüfung gehört zu jfecher-ante-deep-analysis, weil sie eine konkrete Datei, einen konkreten Befehl oder einen dokumentierten Pfad mit dem beobachteten Ergebnis verbindet. Pauschale Aussagen über Qualität oder Kompatibilität reichen dafür nicht. Für die Bewertung sind deshalb Version, Betriebssystem, Eingabe, Ausgabe und Fehlermeldung getrennt zu notieren. Wo die README keine Aussage trifft, bleibt der Punkt offen.
Redaktionelles Fazit
Geeignet ist Ante für Leser, deren Vorhaben zu den im README beschriebenen Eingaben, Abhängigkeiten und Ausgaben passt. Ungeeignet ist eine Übernahme als pauschale Zusage. Vor der Entscheidung sollte der konkrete Prüfweg ausgeführt werden: Bauen Sie Ante nach der README-Anleitung, führen Sie das Syntaxbeispiel aus und prüfen Sie unter Windows den LLVM-Pfad sowie die angegebenen Testbefehle. Das Ergebnis zeigt, welche Teile in der eigenen Umgebung tatsächlich tragen.
Community-Notizen