계속은 어떤 값으로 다음에 일어날 일을 설명합니다. 그저 가치를 취하고 계산을하는 함수가 아닌가? (+ (* 2 3) 5)
(* 2 3)의 계속 여기에 call/cc을 사용하고 기능 k을 사용하지 않는 점은 무엇입니까 (+ _ 5) (define k (lambda (v) (+ v 5)))
입니까?
장 19 내 질문은 get-first 도우미 함수의 (leave '())에 관한에서 two-in-a-row*? 기능에서 봐 주시기 바랍니다. (waddle l)은 '() 또는 목록이 모두 소모되었거나 목록의 아톰이 검색되었음을 나타내는 원자를 반환합니다. (leave '())이 없으면이 두 종류의 값이 반환되고 계속되는 leave은 사용되지 않습니다. 그러
하스켈에서 함수 quux의 예제와 연속 모나드의 정의 및 callCC을 고려해보십시오. instance Monad (Cont r) where
return x = cont ($ x)
s >>= f = cont $ \c -> runCont s $ \x -> runCont (f x) c
callCC :: ((a -> Cont r b) ->
나는 다음과 같은 무한 루프 설정하지 않는 방법을 이해하지 않습니다 내가 (return 22)를 호출 할 때 (define call/cc call-with-current-continuation) ; ccc alias
(define return #f) ; declare a global variable 'return'
(+ 1 (call/cc (lambd
나는 Racket에서 이것을 시도하고 있으며 답은 5 점입니다.하지만 어떻게 답을 얻었는지 알 수는 없습니다. ((call/cc call/cc) (lambda (x) 5))
다음과 같이 확장했습니다. 확장을 가정는 ((call/cc (lambda (k) (call/cc (lambda (k1) (k k1))))) (lambda (x) 5))
난 아직도
저는 Scheme에 아직 익숙하지 않아/cc와 amb 연산자를 통해 마법의 사각형을 풀려고합니다. 현재 출력 중입니다 : 1 1 1 31 Row 1
16 16 1 1 Row 2
16 1 16 1 Row 3
1 16 16 1 Row 4
왜 그 번호 만 사용하는지 알 수 없습니다. 내 별개인가? 순서? 여기 내 코드는 다음과 같습니다. ;; check
스키마 R6RS에 return 함수를 구현하려고합니다. (do-some-job-after) 및 some-value의 람다 함수의 최종 값을 실행하지 않는, (lambda()
(do-some-job-before)
(return some-value)
(do-some-job-after))
이 (do-some-job-before)을
지난 며칠 동안 계획서 (특히 guile)의 연속을 가지고 놀았으며 일부 기능에 대해 궁금해하는 결과에 조금 혼란스러워합니다. 누구든지 여기서 무슨 일이 일어나는지 정확하게 설명 할 수 있습니다. (get-token)이라는 함수가 있는데, 주어진 파일에서 다음으로 발견 된 토큰을 검색합니다. 예를 들어, 다음의 3 개의 토큰이 "a", "b", "c"의 경
"명령"과 "프로그램"(미로에 거주하는 로봇에 대한 우리 교수가 발명 한 "로봇 언어"의 해석자)의 목록을 재귀 적으로 분석해야하는 프로그램을 작성 중입니다. 초기 구현이 너무 느리기 때문에 call-with-current-continuation을 사용하기로 결정했습니다. 나는 call/cc가 어떻게 작동하는지 알고있다. 설명으로 this과 this을 읽었