Next: , Previous: , Up: expander lexenv   [Index]


15.3.8 How synonym syntaxes work

When an synonym syntax binding is established:

(define-syntax ?lhs (make-synonym-transformer ?id))

an identifier ?lhs is associated to a main label ?label in the current rib; an entry is pushed on the LEXENV:

(?label . ($synonym . ?synonym-label))

where ?synonym-label is the label bound to the identifier ?id. Given the identifier ?lhs: we can retrieve the associated ?label and so the ?synonym-label; then we can “follow through” ?synonym-label to retrieve the actual binding descriptor associated to ?id.