Asynchrones Rust treibt einen neuen Scheme-Compiler an: Einführung von scheme-rs

2025-02-18

Matthew Plant stellt scheme-rs vor, seine Scheme-Implementierung, die die Leistungsfähigkeit von asynchronem Rust nutzt, um die langsamen Kompilierzeiten und die schwierige Debug-Erfahrung zu beheben. scheme-rs verwendet den R6RS-Standard und bietet nahtlose Interoperabilität mit asynchronem Rust, was das Verknüpfen von Code und das Debuggen vereinfacht. Der Autor skizziert auch eine zukünftige Sprache, Gouki, die auf scheme-rs aufbaut und das Makrosystem von Scheme mit dem Typsystem von Rust kombiniert, um eine leistungsfähigere Programmiererfahrung zu bieten. Obwohl scheme-rs noch in der Entwicklung ist, verfügt es über Kernfunktionen, und der Autor plant, eingebaute Funktionen hinzuzufügen und die Kompilierleistung zu optimieren.

Mehr lesen
Entwicklung

Konkurrente Zyklenerfassung: Garbage-Collected Smart Pointer in Rust für Scheme

2024-12-13

Dieser Artikel beschreibt die Implementierung eines konkurrenten Zyklenerfassungssystems in Rust für Garbage-Collected Smart Pointer (Gc) in einem Scheme-Interpreter. Gc funktioniert ähnlich wie Arc> und unterstützt interne Mutabilität, Klonen und das Senden über Threads hinweg. Der Artikel erklärt detailliert die Implementierung von Gc, einschließlich threadsicherer interner Mutabilität mit Semaphoren und Lese-/Schreibsperren, sowie die Implementierungsdetails der konkurrenten Zyklenerfassung basierend auf dem Algorithmus von Bacon und Rajan. Dies beinhaltet das Trace-Trait, die Zykluserkennung und Mechanismen zur Behandlung von gleichzeitigen Änderungen.

Mehr lesen
Entwicklung