-
-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stepper does not step for check-satisfied
#232
Comments
(This is the case since at least v8.8.) |
For this test: #lang htdp/isl+
(check-satisfied (* 2 2) even?) The stepper from v8.15 first shows (let ((with-handlers-predicate1
exn:fail:contract:arity?)
(with-handlers-handler2
(lambda (exn)
(let ((msg (exn-message exn)))
(let ((msg1
(regexp-match
(pregexp
"(.*): arity mismatch")
msg)))
(cond
(msg1
(let ((raised-name (cadr msg1)))
(if (equal?
"even?"
raised-name)
(error-check
(lambda (v) #false)
"even?"
SATISFIED-FMT
#true)
(raise exn))))))))))
(let ((bpz
(continuation-mark-set-first
#false
break-enabled-key)))
(call-handled-body
bpz
(lambda (e)
(select-handler/no-breaks
e
bpz
(list
(cons
with-handlers-predicate1
with-handlers-handler2))))
(lambda () (even? 4))))) For this test: #lang htdp/isl+
(check-satisfied (+ 2 3) (lambda (n) (even? (sub1 n)))) The stepper from v8.15 raises the error A fix probably needs to rewrite the expansion of |
It probably makes sense to lift out the generated code into helper functions, like this:
|
Huh. Okay, well, I just did some exploration, and it looks like Matthias added To be perfectly honest,
... Actually, this is kind of an interesting puzzle. I'm going to start a separate email. |
I am not sure if it is just me or for everyone. When trying to step this program:
The stepper expands
check-satisfied
and steps through its implementation. Moreover, adding this test:raises the error
The text was updated successfully, but these errors were encountered: