On this page:
symbolic-identifier=?
make-id
syntax-location-string
begin-for-syntax/ any-order
Version: 4.0.2.5

13 Syntax utilities

 (require (planet untyped/unlib/syntax))

Utilities for creating macros and working with syntax.

(symbolic-identifier=? stx1 stx2)  boolean?

  stx1 : syntax?

  stx2 : syntax?

Compares two identifiers based on their symbolic representation.

(make-id stx arg ...)  syntax?

  stx : (U syntax? #f)

  arg : (U syntax? string? symbol? number?)

Creates an identifier by appending args. Equivalent to:

  (datum->syntax stx (string->symbol (apply string-append (map arg->string args))))

where arg->string converts an argument to a string.

(syntax-location-string stx)  string?

  stx : syntax?

Returns a string describing the source location of stx (for example "myfile.ss:123:45").

(begin-for-syntax/any-order definition ...)

 

definition

 

=

 

(define (id arg ...) expr ...)

 

 

|

 

(define id expr)

Like begin-for-syntax except that definitions can refer to previous definitions in the manner of a letrec statement. Only definitions are allowed within the body of the form.