RacketCon 2026, die sechzehnte jährliche Konferenz der Programmiersprache Racket, findet vom 3. bis 4. Oktober 2026 in Oakland, Kalifornien, statt und bietet eine hybride Online-Teilnahme per Livestream. Das Programm umfasst hochkarätige Fachvorträge zu Spracherweiterungen, Typinferenz, Low-Level-Compilation über LLVM, Gleitkomma-Optimierung und neuen Systembibliotheken. Begleitet wird das Event von einer intensiven Hacker-News-Debatte über Metaprogrammierung, Sprachdesign im Zeitalter von KI-Konvergenz und alternative Lisp-Implementierungen.
Wichtigste Punkte
Veranstaltungsdetails: Die sechzehnte RacketCon findet am 3. und 4. Oktober 2026 im Oakstop (Broadway Gallery Suite) in Oakland, Kalifornien, statt; Aufzeichnungen werden nachträglich auf YouTube veröffentlicht.
Keynote von Pat Hanrahan: Der Turing-Preisträger von 2019, ehemaliger Pixar-RenderMan-Entwickler und Tableau-Mitbegründer hält einen Eröffnungsvortrag mit dem Titel „On Notation“.
Typinferenz (Fred Fu): Ein Prototyp zur Kombination von Occurrence Typing und algebraischem Subtyping, um Typisierungsfehler bei makrogenerierten Lambda-Parametern in Typed Racket zu eliminieren.
Pille (Lucas Myers): Eine neue Rhombus-basierte Sprache mit einem LLVM-basierten Compiler, die Low-Level-Systemprogrammierung und Mikrocontroller-Einsatz durch Umgehung der Racket-VM ermöglicht.
Treason (Mike Delmonaco): Ein Prototyp für fehlerstabile IDE-Dienste in makroerweiterten Sprachen, der durch spezifikationsgesteuerte Unterausdrucksexpansion auch bei fehlerhaftem Code funktioniert.
Herbie (Pavel Panchekha): Ein Compiler zur automatischen Korrektur von Gleitkomma-Ungleichungen, mit einer zeijährigen Retrospektive über die Entwicklung in Racket.
Effect Handlers in cio (JJ): Vorstellung einer untypisierten Effekt-Handler-Bibliothek für Racket und Guile Scheme zur Realisierung allgemeiner nicht-lokaler Kontrollflüsse.
BrandX (Ryan Culpepper): Eine neue OOP-Bibliothek für Racket, die objektorientierte Programmierung über Schnittstellen, Generics und Kontrakte bereitstellt, um Einschränkungen von racket/class zu beheben.
Uke (Sam Phillips): Eine optimierte Dataframe-Bibliothek für Racket mit strengem Fokus auf Immutabilität und effiziente Kopiervorgänge.
ffi2 (Matthew Flatt): Eine neue Foreign-Function-Interface-Schicht, die Barzilays dynamische FFI-Ästhetik mit Chez Schemes statischer ftypes-Leistung kombiniert.
Diskussions-Highlights
Community-Projekte: Teilnehmer präsentierten eigene Lisp- und Scheme-basierte Projekte, darunter ALOE (eine Kombination aus Scheme, Smalltalk und Typen mit einem Prototyp in Racket) sowie pricklypear (ein in OCaml geschriebener Interpreter).
KI-Konvergenz und Sprachvielfalt: Eine breite Kontroverse entbrannte darüber, ob sich die Softwareentwicklung durch KI auf wenige Mainstream-Sprachen (wie Go, Rust, JavaScript/TypeScript) versteift oder ob nischige, expressive Sprachen wie Racket für metalinguistische Abstraktionen unverzichtbar bleiben.
LLMs und Racket: Entwickler merkten an, dass moderne Sprachmodelle wie Opus 5.5 Racket-Code und Makro-DSL-Strukturen inzwischen fehlerfrei generieren können, während ältere Modelle noch an Klammersyntax scheiterten.
Objektorientierung in Lisp: Es wurde diskutiert, wie Closures als Äquivalent zu Objekten dienen können, unter Bezugnahme auf historische Designmuster aus dem klassischen Informatik-Lehrbuch SICP (Structure and Interpretation of Computer Programs).
Raritäten und Archive: Nutzer verwiesen auf den offiziellen YouTube-Kanal (@racketlang) als Archiv für Vorträge vergangener Konferenzen.
Glossar
Racket: Eine von Scheme abgeleitete Programmiersprache und Ökosystem, die speziell für das Erstellen neuer Programmiersprachen und domänenspezifischer Sprachen (DSLs) entwickelt wurde.
Rhombus: Eine in aktiver Entwicklung befindliche Schwester- bzw. Nachfolgersprache von Racket, die eine konventionellere Syntax mit Racket-Makros kombiniert.
Occurrence Typing: Ein in Typed Racket verwendetes Typsystem, das Datentypen statisch anhand von dynamischen Laufzeit-Typüberprüfungen (z. B. if-Abfragen) verfeinert.
Algebraisches Subtyping (Algebraic Subtyping): Ein fortgeschrittenes Verfahren zur automatischen Berechnung von Subtypbeziehungen in Typsystemen.
LLVM: Eine modulare Compiler-Infrastruktur, die zur Optimierung und Generierung von Maschinencode für verschiedene Hardware-Architekturen dient.
Makro (Macro): Ein Sprachelement der Metaprogrammierung, das Quellcode zur Compile-Zeit manipuliert, um neue Syntaxstrukturen oder domänenspezifische Sprachen zu erzeugen.
Gleitkomma-Genauigkeit (Floating-Point Accuracy): Die Präzision, mit der Computer reelle Zahlen speichern und verarbeiten; fehleranfällig durch unvermeidliche Rundungsfehler.
Effekt-Handler (Effect Handlers): Ein Programmierkonzept, das die Definition von Seiteneffekten (wie Ein-/Ausgabe oder Zustand) von deren tatsächlicher Ausführung trennt.
Dataframe: Eine zweidimensionale, tabellarische Datenstruktur zur Verwaltung und Analyse strukturierter Daten.
Foreign-Function Interface (FFI): Ein Programmiermechanismus, der es einer Sprache (wie Racket) erlaubt, Funktionen und Bibliotheken aufzurufen, die in einer anderen Sprache (wie C) geschrieben sind.
SICP („Structure and Interpretation of Computer Programs“): Ein einflussreiches Informatik-Lehrbuch, das grundlegende Programmierkonzepte und Interpreter-Design anhand der Programmiersprache Scheme vermittelt.