diff --git a/graph-lib/graph/__DEBUG_graph6.2.rkt b/graph-lib/graph/__DEBUG_graph6.2.rkt index ccf33424..432ec331 100644 --- a/graph-lib/graph/__DEBUG_graph6.2.rkt +++ b/graph-lib/graph/__DEBUG_graph6.2.rkt @@ -1,55 +1,23 @@ #lang typed/racket (require ;"graph-6-rich-returns.lp2.rkt" - (except-in "../lib/low.rkt" ~>) - "graph.lp2.rkt" - "get.lp2.rkt" - "../type-expander/type-expander.lp2.rkt" - "../type-expander/multi-id.lp2.rkt" - "structure.lp2.rkt" ; debug - "variant.lp2.rkt" ; debug - "fold-queues.lp2.rkt"; debug - "rewrite-type.lp2.rkt"; debug - "meta-struct.rkt"; debug - racket/splicing; debug - racket/stxparam; debug - (for-syntax syntax/parse) - (for-syntax syntax/parse/experimental/template)) - -(define-rename-transformer-parameter ~>aaa - (make-rename-transformer #'+)) + (except-in "../lib/low.rkt" ~>) + "graph.lp2.rkt" + "get.lp2.rkt" + "../type-expander/type-expander.lp2.rkt" + "../type-expander/multi-id.lp2.rkt" + "structure.lp2.rkt" ; debug + "variant.lp2.rkt" ; debug + "fold-queues.lp2.rkt"; debug + "rewrite-type.lp2.rkt"; debug + "meta-struct.rkt"; debug + racket/splicing; debug + racket/stxparam; debug + (for-syntax syntax/parse) + (for-syntax syntax/parse/experimental/template)) (define-graph gr - #:wrapping-definitions - (begin - (define-type-expander - (first-step-expander1 stx) - (syntax-parse - stx - ((_ (~datum m-cities)) - (template - (U - (first-step #:placeholder m-cities3/node) - (Listof (first-step #:placeholder City))))) - ((_ (~datum m-streets)) - (template - (U - (first-step #:placeholder m-streets4/node) - (Listof (first-step #:placeholder Street))))))) - (define-type-expander - (first-step-expander2 stx) - (syntax-parse - stx - ((_ (~datum m-cities)) #'(U m-cities3/node (Listof City))) - ((_ (~datum m-streets)) #'(U m-streets4/node (Listof Street))))) - ;(define-syntax (g-rest stx) (syntax-local-introduce #')) - (splicing-let-syntaxes - () - (define-graph-rest)) - #;(splicing-syntax-parameterize - ();([~>aaa (make-rename-transformer #'first-step-expander1)]) - (g-rest)) - #;(define-graph-rest)) + #:wrapping-definitions (begin (define-graph-rest)) [City [streets : (Listof Street)] [people : (Listof Person)] [(m-city [c : (Listof (Pairof String String))]) (City (remove-duplicates (map (curry m-street c) (cdrs c))) diff --git a/graph-lib/graph/__DEBUG_graph6.rkt b/graph-lib/graph/__DEBUG_graph6.rkt index 351db7da..530f7d71 100644 --- a/graph-lib/graph/__DEBUG_graph6.rkt +++ b/graph-lib/graph/__DEBUG_graph6.rkt @@ -50,8 +50,8 @@ (begin (define-type-expander (first-step-expander1 stx) - #;#'Number - (syntax-parse + #'Number + #;(syntax-parse stx ((_ (~datum m-cities)) (template @@ -65,17 +65,13 @@ (Listof (first-step #:placeholder Street))))))) (define-type-expander (first-step-expander2 stx) - #;#'Number - (syntax-parse + #'Number + #;(syntax-parse stx ((_ (~datum m-cities)) #'(U m-cities3/node (Listof City))) ((_ (~datum m-streets)) #'(U m-streets4/node (Listof Street))))) - (splicing-let-syntax - ([~> (make-rename-transformer #'first-step-expander1)]) - (define-graph-rest)) - #;(splicing-syntax-parameterize - ((~> (make-rename-transformer #'first-step-expander1))) - (define-graph-rest))) + (splicing-syntax-parameterize + ((~> (make-rename-transformer #'first-step-expander1))))) (City (streets : (Let (~> first-step-expander2) (~> m-streets))) ((City1/simple-mapping (streets : (~> m-streets))) (City streets))) diff --git a/graph-lib/graph/__DEBUG_graph6.txt b/graph-lib/graph/__DEBUG_graph6.txt deleted file mode 100644 index 7286dbc4..00000000 --- a/graph-lib/graph/__DEBUG_graph6.txt +++ /dev/null @@ -1,5 +0,0 @@ -Attempts: -* (datum->syntax) Commit 876c4d2: works, but introduces ~> into the global scope -* (syntax-local-introduce) Does not work at all -* ((make-delta-introducer) (syntax-local-introduce)), see identifiers.ods and __DEBUG_graph6F.rkt: Works on normal identifiers (not sure?) but not for the graph (why?) -* splicing-syntax-parameterize Commit 56fdfae: splicing-syntax-parameterize messes up the scopes of its body diff --git a/graph-lib/graph/graph.lp2.rkt b/graph-lib/graph/graph.lp2.rkt index 353da273..b6ba31e6 100644 --- a/graph-lib/graph/graph.lp2.rkt +++ b/graph-lib/graph/graph.lp2.rkt @@ -355,17 +355,13 @@ When the user gave @tc[#:wrapping-definitions] instead of @tc[#:definitions], we use syntax-parameterize to enable the @tc[(define-graph-rest)] form. @chunk[ - (begin - (define-syntax (call-second-step stx) - (syntax-local-introduce - #')) - (splicing-syntax-parameterize - ([define-graph-rest - (syntax-rules () ;; TODO: indentation bug here in v 6.4.0.8 - [(_) call-second-step])]);(splicing-syntax-parameterize + (splicing-syntax-parameterize + ([define-graph-rest + (syntax-rules () ;; TODO: indentation bug here in v 6.4.0.8 + [(_) #';(splicing-syntax-parameterize ; ([define-graph-rest default-define-graph-rest]) - ;;)])]) - wrapping-extra-definitions))] + ])]);)])]) + wrapping-extra-definitions)] The first step macro is defined as follows: diff --git a/graph-lib/graph/identifiers.ods b/graph-lib/graph/identifiers.ods deleted file mode 100644 index 9f0a9c9a..00000000 Binary files a/graph-lib/graph/identifiers.ods and /dev/null differ