Combinator parser change to add new signature form
htdp/testing change so that generate-report does something svn: r9382
This commit is contained in:
parent
8a1e72223f
commit
ed478254e2
|
@ -6,6 +6,6 @@
|
||||||
(provide combinator-parser-tools@
|
(provide combinator-parser-tools@
|
||||||
combinator-parser^ err^
|
combinator-parser^ err^
|
||||||
error-format-parameters^ language-format-parameters^ language-dictionary^
|
error-format-parameters^ language-format-parameters^ language-dictionary^
|
||||||
terminals)
|
terminals recurs)
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -18,6 +18,16 @@
|
||||||
(format "token-~a" (syntax-e e)))))
|
(format "token-~a" (syntax-e e)))))
|
||||||
(syntax->list #'(elt ...)))))]))
|
(syntax->list #'(elt ...)))))]))
|
||||||
|
|
||||||
|
(define-signature-form (recurs stx)
|
||||||
|
(syntax-case stx ()
|
||||||
|
[(_ id ...)
|
||||||
|
(andmap identifier? (syntax->list #'(id ...)))
|
||||||
|
(syntax->list #`(id ...
|
||||||
|
#,@(map (lambda (e) #`(define-syntaxes
|
||||||
|
(#,(datum->syntax e (string->symbol (format "~a@" (syntax-e e)))))
|
||||||
|
(values (syntax-id-rules () [_ #'(eta #,e)]))))
|
||||||
|
(syntax->list #'(id ...)))))]))
|
||||||
|
|
||||||
(define-signature language-dictionary^ (misspelled misscap missclass))
|
(define-signature language-dictionary^ (misspelled misscap missclass))
|
||||||
|
|
||||||
(define-signature combinator-parser-forms^
|
(define-signature combinator-parser-forms^
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
(require test-engine/scheme-tests)
|
(require test-engine/scheme-tests)
|
||||||
|
|
||||||
(define (generate-report) (void))
|
(define (generate-report) (test)#;(void))
|
||||||
|
|
||||||
(provide (all-from-out test-engine/scheme-tests)
|
(provide (all-from-out test-engine/scheme-tests)
|
||||||
generate-report)
|
generate-report)
|
||||||
|
|
|
@ -2,11 +2,12 @@
|
||||||
|
|
||||||
(require parser-tools/lex
|
(require parser-tools/lex
|
||||||
scheme/unit
|
scheme/unit
|
||||||
(lib "combinator-unit.ss" "combinator-parser")
|
combinator-parser/combinator-unit
|
||||||
|
#;(lib "combinator-unit.ss" "combinator-parser")
|
||||||
"java-signatures.scm"
|
"java-signatures.scm"
|
||||||
mzlib/string)
|
mzlib/string)
|
||||||
|
|
||||||
(define-signature language-forms^ (program statement expression field interact)) ;value-type method-type))
|
(define-signature language-forms^ (program statement (recurs expression) field interact)) ;value-type method-type))
|
||||||
|
|
||||||
(define-signature token-proc^ (old-tokens->new))
|
(define-signature token-proc^ (old-tokens->new))
|
||||||
|
|
||||||
|
@ -329,7 +330,7 @@
|
||||||
|
|
||||||
(define new-class
|
(define new-class
|
||||||
(choose ((sequence (new name O_PAREN C_PAREN) id)
|
(choose ((sequence (new name O_PAREN C_PAREN) id)
|
||||||
(sequence (new name O_PAREN (comma-sep (eta expression) "arguments") C_PAREN) id))
|
(sequence (new name O_PAREN (comma-sep expression@ "arguments") C_PAREN) id))
|
||||||
"class instantiation"))
|
"class instantiation"))
|
||||||
|
|
||||||
(define (new-array type-name)
|
(define (new-array type-name)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user