подскажите, как можно определить, если программа вываливается с переполнением стека (подозрение на нехвостовую рекурсию), в каком именно месте это произошло. какие есть способы отладки (кроме как вставлять контрольные printf)
раньше приходилось иметь дело в основном с питоном, там в таких случаях всё ясно из tranceback; но в caml ведь как я понимаю стек нигде не хранится, и так просто это не разберёшь.
или есть какой-то надёжный способ как не делать ошибок с рекурсией никогда?