> I can't produce a more thorough answer now, but in general the whole > uncovered expressions feature relies on expressions with a source > indication. For example, this works as you expect: > ... > and it should also work for a sandbox that is created from a file.
OK, thanks, that sort of makes sense. But still, if I put the text of the program in a file and do the following it still produces '()... (define Ev (call-with-input-file* "test.rkt" (λ(inp) (parameterize ([sandbox-coverage-enabled #t]) (make-evaluator 'lang/htdp-intermediate inp ))))) (get-uncovered-expressions Ev) And so does this: (define Ev (parameterize ([sandbox-coverage-enabled #t]) (make-evaluator 'lang/htdp-intermediate (open-input-string "(define (f x) (if (zero? x) \"zero\" \"non-zero\")) (f 4)") ))) (get-uncovered-expressions Ev) --- nadeem On Jul 21, 2010, at 6:19 PM, Eli Barzilay wrote: > On Jul 21, Nadeem Abdul Hamid wrote: >> Sorry if I am missing something obvious, by why does the following >> produce '() ? >> >> (define Ev >> (parameterize ([sandbox-coverage-enabled #t]) >> (make-evaluator 'lang/htdp-intermediate >> `(define (f x) >> (if (zero? x) "zero" "non-zero")) >> `(f 4) >> ))) >> (get-uncovered-expressions Ev) >> >> >> I would have expected it to indicate somehow that the "zero" case is >> not covered? > > I can't produce a more thorough answer now, but in general the whole > uncovered expressions feature relies on expressions with a source > indication. For example, this works as you expect: > > (define Ev > (parameterize ([sandbox-coverage-enabled #t]) > (make-evaluator 'lang/htdp-intermediate > "(define (f x) > (if (zero? x) \"zero\" \"non-zero\")) > (f 4)" > ))) > (get-uncovered-expressions Ev) > > and it should also work for a sandbox that is created from a file. > > -- > ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: > http://barzilay.org/ Maze is Life! _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users