Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

PetaPerl

PetaPerl ist eine Perl 5 Laufzeitumgebung der nächsten Generation, geschrieben in Rust, mit Ziel-Kompatibilität zu Perl 5.42+.

Ziele

  • Auto-Parallelisierung - Automatische parallele map, grep, for Schleifen
  • JIT-Kompilierung - V8-Klasse Leistung via Cranelift
  • Pure Perl Viabilität - Schnell genug, dass XS optional wird

Architektur Überblick

flowchart LR
    subgraph Eingabe
        A[Perl Quellcode]
    end

    subgraph Parser
        B[Lexer] --> C[Parser]
        C --> D[AST]
    end

    subgraph Compiler
        D --> E[Codegen]
        E --> F[OpArena]
    end

    subgraph Laufzeit
        F --> G[Interpreter]
        G --> H[PP Dispatch]
    end

    subgraph Ausgabe
        H --> I[Ergebnis]
    end

    A --> B

Schnellstart

# Skript ausführen
pperl script.pl

# Einzeiler ausführen
pperl -e 'print "Hallo, Welt!\n"'

# Nur Syntax prüfen
pperl -c script.pl

Kompatibilität

PetaPerl strebt hohe Kompatibilität mit Perl 5.42+ an. Die Regex-Engine besteht 99,3 % der perl5 re_tests (1959 von 1972 Tests). Siehe Unterschiede zu Perl 5 für bekannte Inkompatibilitäten.

Plattform-Unterstützung

  • Nur Linux (jede Architektur)
  • Kein Windows, macOS oder andere Plattformen