Next: Primitive expression syntax, Previous: Datum syntax, Up: Syntax [Contents][Index]
A number of different special forms are indicated by an
initial hash (number) symbols (#).
Here is a table summarizing them.
Case is ignored for the character followed the #.
Thus #x and #X are the same.
#:keywordGuile-style keyword syntax.
#\#!#‘datumEquivalent to (quasisyntax datum).
Convenience syntax for syntax-case macros.
#’datumEquivalent to (syntax datum).
Convenience syntax for syntax-case macros.
#,datumEquivalent to (unsyntax datum).
Currently only recognized when inside a #`template form.
Convenience syntax for syntax-case macros.
#,(name datum ...)Special named constructors.
This syntax is deprecated, because it conflicts with unsyntax.
It is only recognized when not in a #`template form.
#,@datumEquivalent to (unsyntax-splicing datum).
#(A vector.
#|Start of nested-comment.
#/regex/See Regular expressions.
#<See XML literals.
#;datumA datum comment - the datum is ignored. (An interlexeme-space may appear before the datum.)
#number=datumA reference definition, allowing cyclic and shared structure.
Equivalent to the datum, but also defines an association between
the integer number and that datum, which can be
used by a subsequent #number# form.
#number#A back-reference, allowing cyclic and shared structure.
#RadatumAn array literal, for a multi-dimensional array of rank R.
#bA binary (base-2) number.
#dA decimal (base-10) number.
#eA prefix to treat the following number as exact.
#f#falseThe standard boolean false object.
#fn(number ...)A uniform vector of floating-point numbers. The parameter n is a precision, which can be 32 or 64. See Uniform vectors.
#iA prefix to treat the following number as inexact.
#oAn octal (base-8) number.
#baserA number in the specified base (radix).
#sn(number ...)A uniform vector of signed integers. The parameter n is a precision, which can be 8, 16, 32, or 64. See Uniform vectors.
#t#trueThe standard boolean true object.
#un(number ...)A uniform vector of unsigned integers. The parameter n is a precision, which can be 8, 16, 32, or 64. See Uniform vectors.
#xA hexadecimal (base-16) number.
The follow named constructor forms are supported:
#,(path path)#,(filepath path)#,(URI path)#,(symbol local-name [uri [prefix]])#,(symbol local-name namespace)#,(namespace uri [prefix])#,(duration duration)Next: Primitive expression syntax, Previous: Datum syntax, Up: Syntax [Contents][Index]