Remove potential for stack overflow from List.map, List.filter, List.mapFilter and List.split by using tail-recursive, not recursive, implementations. Also removes the potential for stack overflow from Deque.mo (which uses List.split.
Not necessarily for merging since this penalises performance for more reasonable small lists.
Remove potential for stack overflow from List.map, List.filter, List.mapFilter and List.split by using tail-recursive, not recursive, implementations. Also removes the potential for stack overflow from Deque.mo (which uses List.split.
Not necessarily for merging since this penalises performance for more reasonable small lists.