diff --git a/qi-doc/scribblings/principles.scrbl b/qi-doc/scribblings/principles.scrbl index 45990e75d..37b6f56a5 100644 --- a/qi-doc/scribblings/principles.scrbl +++ b/qi-doc/scribblings/principles.scrbl @@ -142,4 +142,4 @@ All of this happens at @seclink["phases" #:doc '(lib "scribblings/guide/guide.sc Thus, Qi is a special kind of @seclink["Hosted_Languages"]{hosted language}, one that happens to have the same architecture as the host language, Racket, in terms of having distinct expansion and compilation steps. This gives it a lot of flexibility in its implementation, including allowing much of its surface syntax to be implemented as @seclink["Qi_Macros"]{Qi macros} (for instance, Qi's @racket[switch] expands to a use of Qi's @racket[if] just as Racket's @racket[cond] expands to a use of Racket's @racket[if]), allowing it to be naturally macro-extensible by users, and lending it the ability to @seclink["Don_t_Stop_Me_Now"]{perform optimizations on the core language} that allow idiomatic code to be performant. -This architecture is achieved through the use of @seclink["top" #:indirect? #t #:doc '(lib "syntax-spec-v1/scribblings/main.scrbl")]{Syntax Spec}, following the general approach described in @hyperlink["https://dl.acm.org/doi/abs/10.1145/3428297"]{Macros for Domain-Specific Languages (Ballantyne et. al.)}. +This architecture is achieved through the use of @seclink["top" #:indirect? #t #:doc '(lib "syntax-spec-v2/scribblings/main.scrbl")]{Syntax Spec}, following the general approach described in @hyperlink["https://dl.acm.org/doi/abs/10.1145/3674627"]{Compiled, Extensible, Multi-language DSLs (Ballantyne et. al.)} and @hyperlink["https://dl.acm.org/doi/abs/10.1145/3428297"]{Macros for Domain-Specific Languages (Ballantyne et. al.)}. diff --git a/qi-lib/flow.rkt b/qi-lib/flow.rkt index 773d33328..5d98aeb31 100644 --- a/qi-lib/flow.rkt +++ b/qi-lib/flow.rkt @@ -5,7 +5,7 @@ (all-from-out "flow/extended/expander.rkt") (all-from-out "flow/extended/forms.rkt")) -(require syntax-spec-v1 +(require syntax-spec-v2 (for-syntax racket/base syntax/parse (only-in "private/util.rkt" diff --git a/qi-lib/flow/extended/expander.rkt b/qi-lib/flow/extended/expander.rkt index 3f09b836e..8a2a3782c 100644 --- a/qi-lib/flow/extended/expander.rkt +++ b/qi-lib/flow/extended/expander.rkt @@ -12,7 +12,7 @@ [sep △] [collect ▽]))) -(require syntax-spec-v1 +(require syntax-spec-v2 "../space.rkt" (for-syntax "../aux-syntax.rkt" "syntax.rkt" @@ -63,7 +63,7 @@ core language's use of #%app, etc.). #:binding-space qi (as v:racket-var ...+) - #:binding {(bind v) nested} + #:binding (scope (bind v) nested) (thread f:floe ...) #:binding (nest f nested) diff --git a/qi-lib/info.rkt b/qi-lib/info.rkt index d42a9f904..4289047b2 100644 --- a/qi-lib/info.rkt +++ b/qi-lib/info.rkt @@ -4,7 +4,7 @@ (define collection "qi") (define deps '("base" ("fancy-app" #:version "1.1") - "syntax-spec-v1" + "syntax-spec-v2" "macro-debugger")) (define build-deps '()) (define clean '("compiled" "private/compiled"))