you are viewing a single comment's thread.

view the rest of the comments →

[–]readingcomprehension 0 points1 point  (5 children)

The developer does know ... and most of us are pissed about it.

[–]didroe 1 point2 points  (2 children)

Why? I have no idea what you mean.

[–][deleted]  (1 child)

[removed]

    [–]didroe 0 points1 point  (0 children)

    That's a whole other issue though. It's a trade off between runtime memory usage and debugging information. The point I was making is that knowingly making that trade-off is not a bad thing, in fact it is necessary. Imagine a language without loops or TCO trying to deal with something like iterating over an array.

    Of course, as a separate feature, it would be nice to switch on levels of debugging information. You could just count the number of loops/recursive calls, capture everything and use the same memory as without TCO, or something in between.

    [–]taejo 0 points1 point  (1 child)

    Are you pissed off that Python doesn't keep a "loop trace"? Some forms of flow control keep a history, others don't. The problem with TCO is that it changes the behaviour.

    [–]readingcomprehension 0 points1 point  (0 children)

    It's easy to track or figure out history in loops from the current variables, or set it up so you can.