We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
분산 컴퓨팅을 위한 CPS CPS를 사용하면 로컬과 분산에서 처리하는 것이 더 간단해진다.
조합(combination)을 계산해주는 함수인 choose를 작성해보자. 우선 일반적인 방법:
function choose (n,k) { return fact(n) / (fact(k) * fact(n-k)) ; } 이제 이 코드가 로컬 컴퓨터가 아닌 서버에서 동작해야 하면
fact 프로시저가 블로킹되어 서버에서 응답이 오기까지 기다리도록 작성할 수도 있지만, 이 방법은 좋지 않다.
대신 CPS로 choose를 작성해보자:
function choose(n,k,ret) { fact (n, function(factn) { fact (n-k,function(factnk) { fact (k, function(factk) { ret (factn / (factnk * factk)) }) }) }) } 이제 비동기적으로 팩토리얼을 계산하는 fact 프로시저 만들기가 쉬워졌다. 아래와 같이 말이다:
function fact(n,ret) { fetch ("./fact/"+ n,function(res) { ret(eval(res)) }) ; }
The text was updated successfully, but these errors were encountered:
No branches or pull requests
분산 컴퓨팅을 위한 CPS
CPS를 사용하면 로컬과 분산에서 처리하는 것이 더 간단해진다.
조합(combination)을 계산해주는 함수인 choose를 작성해보자. 우선 일반적인 방법:
function choose (n,k) {
return fact(n) /
(fact(k) * fact(n-k)) ;
}
이제 이 코드가 로컬 컴퓨터가 아닌 서버에서 동작해야 하면
fact 프로시저가 블로킹되어 서버에서 응답이 오기까지 기다리도록 작성할 수도 있지만, 이 방법은 좋지 않다.
대신 CPS로 choose를 작성해보자:
function choose(n,k,ret) {
fact (n, function(factn) {
fact (n-k,function(factnk) {
fact (k, function(factk) {
ret (factn / (factnk * factk)) }) }) })
}
이제 비동기적으로 팩토리얼을 계산하는 fact 프로시저 만들기가 쉬워졌다. 아래와 같이 말이다:
function fact(n,ret) {
fetch ("./fact/"+ n,function(res) {
ret(eval(res))
}) ;
}
The text was updated successfully, but these errors were encountered: