[Update]: add memoization, first, curry, filter, getAverangeEvenNumbers, lazye evaluation.