JavaScript 함수형 프로그래밍 - 지연된 함수열을 병렬적으로 평가하기


JavaScript 함수형 프로그래밍 - 지연된 함수열을 병렬적으로 평가하기

자바스크립트가 동작하는 환경(브라우저, node.js)에서는 비동기 IO로 동작한다. 비동기 IO는 Single Thread를 기반으로 해서 IO들을 동기적으로 처리하기 보다는 비동기적으로 처리를 해서 하나의 Thead에서도 CPU의 점유를 효율적으로 해서 IO 작업들을 조금 더 효율적으로 하는 트렌드이다. C.reduce 모두 동시에 출발시킨 값을 return 시키는 reduce 동기적으로 실행하는 reduce보다 시간이 훨씬 단축된다. const delay500 => a => new Promise(resolve => { console.log('hi~'); setTimeout(() => resolve(a),500); }); const add = (a, b) => a + b; // reduce를 사용한 예시 go([1,2,3,4,5], L.map(a => delay500(a * a)), L.filter(a => a % 2), reduce(add), console.log ) // hi...


#Cfilter #평가하기 #지연된함수 #병렬적으로 #병렬 #JavaScript #Ctake #Creduce #Cmap #함수형프로그래밍

원문링크 : JavaScript 함수형 프로그래밍 - 지연된 함수열을 병렬적으로 평가하기