You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Deque implementation currently causes a stack overflow trap when using it at larger scale, e.g. by inserting more than 17_000 elements and then removing those from the other end of the deque.
Improve `Deque.mo`:
* Documentation
* Unit tests
Issue detected while refactoring:
* #464
Possible improvement for `Deque`:
* Reduce runtime and space performance of push/pop functions to `O(1)` worst-case per single function call (by avoiding List-split implementation).
Improve `Deque.mo`:
* Documentation
* Unit tests
Issue detected while refactoring:
* #464
Possible improvement for `Deque`:
* Reduce runtime and space performance of push/pop functions to `O(1)` worst-case per single function call (by avoiding List-split implementation).
The
Deque
implementation currently causes a stack overflow trap when using it at larger scale, e.g. by inserting more than 17_000 elements and then removing those from the other end of the deque.Example of failure, by extending
dequeTest.mo
:This is due to the internally used
List.split()
function that involves non-optimized tail recursion.Related possible improvement for Deque:
The text was updated successfully, but these errors were encountered: