You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The define-language macro allows => to follow nonterminal productions as well as terminal definitions, but this is not mentioned in the documentation. It is described in Andy Keep's dissertation, which provides the (here abridged) example
(define-language Lsrc
…
(Expr (e body)
…
(call e e* ...) => (e e* ...)))
and then states
The => (e e* ...) syntax that follows the production indicates a pretty form for the production. The define-language form defines an unparser for each language, and the unparser uses the pretty form when unparsing this production. This is useful to produce a language form that can be evaluated in the host Scheme system.
The
define-language
macro allows=>
to follow nonterminal productions as well as terminal definitions, but this is not mentioned in the documentation. It is described in Andy Keep's dissertation, which provides the (here abridged) exampleand then states
The feature is in use in the wild, e.g. in https://github.com/soegaard/urlang/blob/master/compiler-rjs/compiler2.rkt#L301
The text was updated successfully, but these errors were encountered: