I have been troubleshooting this script for weeks and finally found it was trying to divide by zero.

  • raubarno@lemmy.ml
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    Panicking on the error is much better than letting the system work continue on an undefined behaviour (good luck with debugging if you are ignoring all assertions)!

    • Fabiozeh@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      1 year ago

      Well, Kernighan himself said “The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.”

      If it was good enough for him…

    • lens_r@kbin.social
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      IMO there’s a place for both. A print statement will reveal a flaw in the programmer’s thinking regarding the control flow of the program and the state at that time. If a print statement gives something unexpected, you know exactly where to look in the debugger. If it gives you what you expected, it reveals the problem may be elsewhere