It's possible that the way the code has been generated there isn't actually a breakpoint on that line. I prefer setting break-points either on an exception or on a function. Sometimes that may involve adding a dummy function and breaking on that e.g. else let fun breakHere() = () in breakHere(); false end;
David
On 14/05/2016 09:19, Artella Coding wrote:
Hi, suppose that I have the following code ("basics.ml") :
(* basics.ml *)
fun is_divisible(n : int, currentDivisor : int) = if currentDivisor <= n - 1 then n mod currentDivisor = 0 orelse is_divisible(n, currentDivisor + 1) else false; (* This is line 9 *)
fun is_prime(n : int) : bool = if n = 2 then true else not(is_divisible(n, 2));
Then if I do :
rlwrap poly PolyML.Compiler.debug := true; use "basics.ml"; open PolyML.Debug; breakAt("basics.ml",9); is_prime(15);
then I am finding that the debugger is not stopping at the desired line. Is there anything that I am doing wrong? (I am using the latest compiler sources from github). Thanks
polyml mailing list polyml at inf.ed.ac.uk http://lists.inf.ed.ac.uk/mailman/listinfo/polyml