Perché l'IDE DrRacket (tipo di schema) evidenzia alcuni degli identificatori come "parole chiave" (ad esempio define
, lambda
, send*
) e gli altri come "simboli" (identificatori definiti dall'utente, +
, -
, abs
, send
, send+
, ecc.)?
Sono particolarmente confuso dalla differenza tra send*
e send+
. Per riferimento, ecco gli inizi delle loro definizioni:
(define-syntax (send* stx) ...
(define-syntax (send+ stx) ...
(È possibile che io non usi i termini "identificatore", "simbolo" e "parola chiave" completamente correttamente, ma questo è il modo in cui alcuni di essi sembrano essere usati nelle preferenze di DrRacket.)
A meno che non si tratti di un bug, deve essere spiegato dalla lingua "semantica", quindi ho deciso di chiedere qui.