Ich möchte in Racket eine syntaktische Form erstellen, die ein Schlüsselwort-Argument akzeptiert, so wie manche Funktionen es können.
Nachdem ich es auf ein einfaches Beispiel reduziert habe, habe ich versucht zu schreiben:
%Vor%Damit würde dann folgendes funktionieren:
%Vor%Leider nennt Racket diese "schlechte Syntax", so offensichtlich war dieser Versuch nicht korrekt.
Kann das gemacht werden?
Schlüsselwörter in syntaktischen Mustern werden wie Literale wie Zahlen usw. behandelt, so dass Sie sie nicht als Schlüsselwörter angeben müssen. (Das ist nur für Bezeichner erforderlich.) Also die folgenden Arbeiten (beachten Sie, dass ich den Tippfehler behoben habe, den Sie im zweiten Beispiel hatten):
%Vor% Siehe auch syntax-parse
für ein Dienstprogramm, das sparen von Keywords einfacher.
Tags und Links macros keyword-argument scheme racket