adjust benchmark so that the 'check' functions are required to be
self-contained (and then don't call type-check anymore from the benchmark scripts) this fixes a problem in the let-poly models, since some of the bugs there cause the type-checker to raise an error
This commit is contained in:
parent
a9d8158133
commit
c7c95b8906
|
@ -134,7 +134,7 @@
|
|||
|
||||
(define (check p)
|
||||
(or (not p)
|
||||
(check-progress p)))
|
||||
(implies (type-check p) (check-progress p))))
|
||||
|
||||
(define-metafunction list-machine
|
||||
different : any any -> any
|
||||
|
|
|
@ -134,7 +134,7 @@
|
|||
|
||||
(define (check p)
|
||||
(or (not p)
|
||||
(check-progress p)))
|
||||
(implies (type-check p) (check-progress p))))
|
||||
|
||||
(define-metafunction list-machine
|
||||
different : any any -> any
|
||||
|
|
|
@ -130,7 +130,7 @@
|
|||
|
||||
(define (check p)
|
||||
(or (not p)
|
||||
(check-progress p)))
|
||||
(implies (type-check p) (check-progress p))))
|
||||
|
||||
(define-metafunction list-machine
|
||||
different : any any -> any
|
||||
|
|
|
@ -130,7 +130,7 @@
|
|||
|
||||
(define (check p)
|
||||
(or (not p)
|
||||
(check-progress p)))
|
||||
(implies (type-check p) (check-progress p))))
|
||||
|
||||
(define-metafunction list-machine
|
||||
different : any any -> any
|
||||
|
|
|
@ -287,7 +287,7 @@
|
|||
|
||||
(define (check t)
|
||||
(or (not t)
|
||||
(ins-preserves-rb-tree t)))
|
||||
(implies (type-check t) (ins-preserves-rb-tree t))))
|
||||
|
||||
(define (generate-enum-term)
|
||||
(generate-term rbtrees t #:i-th (pick-an-index 0.25)))
|
||||
|
|
|
@ -285,7 +285,7 @@
|
|||
|
||||
(define (check t)
|
||||
(or (not t)
|
||||
(ins-preserves-rb-tree t)))
|
||||
(implies (type-check t) (ins-preserves-rb-tree t))))
|
||||
|
||||
(define (generate-enum-term)
|
||||
(generate-term rbtrees t #:i-th (pick-an-index 0.25)))
|
||||
|
|
|
@ -287,7 +287,7 @@
|
|||
|
||||
(define (check t)
|
||||
(or (not t)
|
||||
(ins-preserves-rb-tree t)))
|
||||
(implies (type-check t) (ins-preserves-rb-tree t))))
|
||||
|
||||
(define (generate-enum-term)
|
||||
(generate-term rbtrees t #:i-th (pick-an-index 0.25)))
|
||||
|
|
|
@ -287,7 +287,7 @@
|
|||
|
||||
(define (check t)
|
||||
(or (not t)
|
||||
(ins-preserves-rb-tree t)))
|
||||
(implies (type-check t) (ins-preserves-rb-tree t))))
|
||||
|
||||
(define (generate-enum-term)
|
||||
(generate-term rbtrees t #:i-th (pick-an-index 0.25)))
|
||||
|
|
|
@ -186,11 +186,6 @@
|
|||
(printf "~a has the error: ~a\n\n" fpath err)
|
||||
(printf "Running ~a....\n" fpath)
|
||||
(printf "Using generator: ~s\n" gen-type)
|
||||
(define (gen-and-type gen)
|
||||
(λ ()
|
||||
(define t (gen))
|
||||
(and (tc t)
|
||||
t)))
|
||||
(cond
|
||||
[(equal? gen-type 'fixed)
|
||||
(define small-counter-example
|
||||
|
@ -206,15 +201,13 @@
|
|||
(error 'fixed "Expected ~e to fail on check, but it didn't"
|
||||
small-counter-example))]
|
||||
[(equal? gen-type 'grammar)
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () (gen-and-type gen-term))
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () gen-term)
|
||||
check seconds gen-type)]
|
||||
[(equal? gen-type 'enum)
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () (gen-and-type gen-enum))
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () gen-enum)
|
||||
check seconds gen-type)]
|
||||
[(equal? gen-type 'ordered)
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ ()
|
||||
(define g (ordered-generator))
|
||||
(gen-and-type g))
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () (ordered-generator))
|
||||
check seconds gen-type)]
|
||||
[(equal? gen-type 'search)
|
||||
(run/spawn-generations fpath verbose? no-errs? (λ () gen-typed-term)
|
||||
|
|
Loading…
Reference in New Issue
Block a user