Для кого-то может быть неочевидно что ф-ция filter должна только фильтровать данные и ничего больше (например одновременно менять глобальные переменные, выделять память и т.д. и т.п.). Учитывая что как раз все эти ф-ции предназначены для работы с наборами данных (иногда большими) - утечка памяти может быть значительная.