metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-06-16 09:06 pm

Стектрейсы функциональщины

К этому: http://jdevelop.livejournal.com/1969110.html
Вообще, в F# та же проблема. Когда функциональный язык сделан поверх не способствующей тому платформы, стеки вызовов превращаются в кромешный ад.
Причем, если при этом фигурирует ленивость - можно сразу вешаться, т.к. найти источник ошибки, не натыкав во все места принудительную активизацию всех ленивых величин, практически нереально (при работе с БД и утеканием итераторов из открытых запросв это еще обычно и ошибку вылечит).
Альтернатива, видимо - некая визуализация потоков данных и показ "откуда пришла эта хрень".

А еще нужно внутренности жабы и дотнета исключать из стек-трейса, заменяя "известную последовательность" вызовов одной строкой типа "кложурь долбится в интероп за полем".

[identity profile] blackyblack.livejournal.com 2012-06-16 06:37 pm (UTC)(link)
Надо в стектрейсы дописывать параметры для функции и комментарии к функциям. Тогда будет ничё так.

[identity profile] metaclass.livejournal.com 2012-06-16 06:51 pm (UTC)(link)
Я до сих пор не понимаю, почему так не делают, хотя бы в отладочном режиме.

[identity profile] blackyblack.livejournal.com 2012-06-16 06:59 pm (UTC)(link)
Может ява этого тупо не умеет?

[identity profile] antilamer.livejournal.com 2012-06-16 07:18 pm (UTC)(link)
Дебаггеры-то умеют, хотя и не всегда. Могли бы и в API вынести.

[identity profile] vinslivins.livejournal.com 2014-01-22 06:08 am (UTC)(link)
да, кстати, старая тема. никогда не понимал, какая техническая в этом проблема?)