... notation for continuing benchmarks
svn: r4330
This commit is contained in:
parent
08f06adfc2
commit
210cb5affe
|
@ -64,30 +64,42 @@
|
||||||
|
|
||||||
;; Process arguments ------------------------------
|
;; Process arguments ------------------------------
|
||||||
|
|
||||||
(for-each (lambda (arg)
|
(let loop ([args args])
|
||||||
|
(unless (null? args)
|
||||||
|
(let ([arg (car args)])
|
||||||
(let ([s (string->symbol arg)])
|
(let ([s (string->symbol arg)])
|
||||||
(cond
|
(cond
|
||||||
[(memq s implementations)
|
[(memq s implementations)
|
||||||
(set! run-implementations
|
(set! run-implementations
|
||||||
(append (or run-implementations null)
|
(append (or run-implementations null)
|
||||||
(list s)))]
|
(list s)))
|
||||||
|
(loop (cdr args))]
|
||||||
[(assq s no-implementations)
|
[(assq s no-implementations)
|
||||||
=> (lambda (a)
|
=> (lambda (a)
|
||||||
(set! run-implementations
|
(set! run-implementations
|
||||||
(remq (cdr a)
|
(remq (cdr a)
|
||||||
(or run-implementations default-implementations))))]
|
(or run-implementations default-implementations)))
|
||||||
|
(loop (cdr args)))]
|
||||||
[(memq s benchmarks)
|
[(memq s benchmarks)
|
||||||
|
=>
|
||||||
|
(lambda (l)
|
||||||
|
(let* ([...? (and (pair? (cdr args))
|
||||||
|
(equal? (cadr args) "..."))]
|
||||||
|
[new (if ...?
|
||||||
|
l
|
||||||
|
(list s))])
|
||||||
(set! run-benchmarks
|
(set! run-benchmarks
|
||||||
(append (or run-benchmarks null)
|
(append (or run-benchmarks null)
|
||||||
(list s)))]
|
new))
|
||||||
|
(loop ((if ...? cddr cdr) args))))]
|
||||||
[(assq s no-benchmarks)
|
[(assq s no-benchmarks)
|
||||||
=> (lambda (a)
|
=> (lambda (a)
|
||||||
(set! run-benchmarks
|
(set! run-benchmarks
|
||||||
(remq (cdr a)
|
(remq (cdr a)
|
||||||
(or run-benchmarks default-benchmarks))))]
|
(or run-benchmarks default-benchmarks)))
|
||||||
|
(loop (cdr args)))]
|
||||||
[else
|
[else
|
||||||
(error 'auto "mysterious argument: ~a" arg)])))
|
(error 'auto "mysterious argument: ~a" arg)])))))
|
||||||
args)
|
|
||||||
|
|
||||||
(values (or run-benchmarks
|
(values (or run-benchmarks
|
||||||
benchmarks)
|
benchmarks)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user