Evergreen will Systems Code beweisbar sicher machen
Evergreen: A Provably Safe Systems Language
Evergreen vereint explizite Verträge, geprüfte Invarianten und Kontrolle über Speicher in einer Sprache. Vorbedingungen, Nachbedingungen und Dateninvarianten stehen direkt neben dem Code und werden vom Compiler als Pflichten geprüft. Der Compiler verfolgt Speicher-Lebensdauern und gültige Referenzen; Beweise und Induktionslemmas werden nach der Prüfung entfernt und beeinflussen die Laufzeit nicht.
Schreibe auf, was gelten muss. Lass den Compiler prüfen, dass es gilt.