Kristoffer Carlsson
Kristoffer Carlsson
What's the thought about breakpoints. Would we insert a `shouldbreak(#framedata#, stmtidx) && debugger_hook(#framedata#)` between all statements?
Recompiling to insert breakpoints kinda seems like a non-starter. Sure, there will be a performance hit to check the break condition but it should be predicted correctly and it is...
> Moreover, virtually all of the cost is frame creation. How have you determined this? Shouldn't there cycle mechanics handle this quite well? For interpreting `plot(rand(5))` frames are created from...
I don't see how manual inlining will have a big effect without reducing debugging information. If we want to provide the same information as we do now to someone debugging...
Looks good! And as long as we can map back everything in the inlined function to the original one we should be fine with debug info. This mapping doesn't have...
Yes, right now it breaks if the signature in the breakpoint is `
Actually: ```jl julia> JuliaInterpreter.disable_recycle[] = true true julia> f() = @interpret sin(2.0) f (generic function with 1 method) julia> f() 0.9092974268256817 julia> @interpret f() 1.0 ```
Hence WIP :)
Yeah, I think that should at least be tried first. Of course, you are not going to know exactly when the task gets scheduled but I don't think it will...
A "break now!" button seems reasonable. Could be added as a flag check to `shouldbreak`. The question is how you activate it. By a task that sets the flag, or...