# Timing Total crashes kernel

Here is a simple test function

test[n_] :=
Module[{i = 0}, Total[Nest[{++i, #}&, {0}, n], -1]]


On my system V9.0.1 running OS X 10.6.8 and with a clean kernel, the following works

Timing[test[26198]]

{0.106564, 343180701}


but then immediately evaluating

Timing[test[26199]]


fails. I get a beep and Help > Why the Beep?... shows

Can anybody verify this on another system different from mine? Can you cast any light on why it happens? I will submit a bug report to WRI if this is not just peculiar to my system.

• Both work fine here: mac os 10.9, Mathematica 9.01. – bill s Nov 16 '13 at 3:46
• Crashes without Timing too, but the number at which it crashes varies a bit. test[21820] crashes sometimes, but if it doesn't crash on first-run it can be evaluated seemingly endless amount of times without crashing. – ssch Nov 16 '13 at 12:41
• You are blowing up the subroutine stack. Whether this is a consequence of evaluation semantics, or vagary of (mis?)implementation of Nest, I do not know. – Daniel Lichtblau Nov 16 '13 at 23:27
• You can submit it. But the fact is I do not know at this time whether it is a bug or a fact of evaluation semantics. If the latter, there won't be much to be done about it. Time permitting, I hope to look into that next week. – Daniel Lichtblau Nov 16 '13 at 23:42
• I looked some more. The issue is that Total is implemented by recursion. This could be done differently (many things could be done differently...) and I imagine a suggestion will be, or has been, filed to this effect. Not sure if/when it might be acted upon. I'd suggest using Flatten first since that one is not done by recursion (not since version 3.0, at any rate). – Daniel Lichtblau Nov 20 '13 at 17:48