Published on2026년 2월 14일flat 함수를 이터러블로 구현해보자. L.flatten과 L.deepFlat 🪆javascriptfunctional-programminglazy-evaluationiterableflatten중첩 배열을 펼치는 flat 함수를 이터러블로 구현해보자. 그리고 깊은 중첩까지 재귀적으로 펼치는 L.deepFlat을 구현해보자. 그리고 yield * 위임 문법을 알아보자.
Published on2026년 2월 9일게으른 함수로 부지런한 함수 만들기 🐢javascriptfunctional-programminglazy-evaluationiterablecomposition지연 평가 함수들이 단순한 성능 최적화 용도로만 생각하지 말자. 지연평가 함수는 즉시 평가 함수를 만드는 재료가 될 수 있다. L.entries, join, takeAll을 구현하고, L.map과 L.filter로 map과 filter를 재구성해보자.
Published on2026년 2월 7일이번에는 지연 평가(feat: 제너레이터) 😎javascriptfunctional-programmingdebugginglazy-evaluationgenerator이번에는 조합된 지연 평가 함수들을 디버깅해보자. go, L.map, L.filter, take가 조합된 코드를 한 줄 한 줄 따라가며 지연 평가의 실행 흐름을 추적해보자.
Published on2026년 2월 3일필요할 때, 딱 그만큼만 - L.map과 L.filterjavascriptfunctional-programminggeneratorlazy-evaluationiteratormap과 filter의 지연 평가 버전인 L.map과 L.filter를 구현하고, 기존 함수와의 차이를 실행 흐름으로 비교해보자. 언제나 미리 다 계산하는 것보다, 필요할 때 딱 그만큼만 계산하는 게 효율적일 때가 있다.
Published on2026년 2월 1일나는 가끔 기다리고 싶을 때가 있다. (feat. 지연평가)javascriptfunctional-programminggeneratorlazy-evaluationperformance배열을 즉시 생성하는 range와 제너레이터를 활용한 지연 평가 함수 L.range를 구현하고 그 차이를 알아보면서 지연평가가 효율적인 경우에 대해서 생각해보자. 그리고 take 함수를 구현해서 지연평가에 적용해보자