and
문에서 재귀 호출을 사용하여 반복 프로세스를 구축 할 수 있습니까?"및"및 꼬리 재귀
예를 들어, 목적, 우리는 아무 것도하지 않는 기능 foo
을 가지고 있습니다. 어떤 종류의 프로세스를 만들지 (반복 또는 재귀)?
(define (foo? bar)
(if (< bar 0) true (and (> 10 1) (foo? (- bar 1)))))
and
문에서 재귀 호출을 사용하여 반복 프로세스를 구축 할 수 있습니까?"및"및 꼬리 재귀
예를 들어, 목적, 우리는 아무 것도하지 않는 기능 foo
을 가지고 있습니다. 어떤 종류의 프로세스를 만들지 (반복 또는 재귀)?
(define (foo? bar)
(if (< bar 0) true (and (> 10 1) (foo? (- bar 1)))))
Lamberts 술의 경우 구문을 확장 할 수 있습니다.
(define (foo? bar)
(if (< bar 0)
#t ; tail position, but no call
(if (> 10 1)
(foo? (- bar 1)) ; tail position
#f))) ; tail position, but no call
고마워요. 프로세스가 명확 해집니다.) –
그래, 시간을내어 작성해 주셔서 감사합니다! 분명히 일을 분명히합니다! :디 – Mehrdad
마지막으로 호출하는 함수는'foo? '가 아니기 때문에'rec'입니다. – Gabe
@Gabe :'and'는 구문이 아니라 프로 시저입니다. – leppie
@leppie : 컴파일러가 처음부터 모든 것을 최적화하지 않는다고 가정 할 때, 어떻게 변경 될까요? – Mehrdad