나는 웹에서 내 질문에 대한 답변을 얻기 위해 파기를 시도했다. Project DaVinci과 관련된 문서를 찾았습니다. 이것은 JVM에서 클로저를 포함시키는 것과 관련된 JSR 292에 태그됩니다. 이 프로젝트가 실현되어 Java 8의 일부가 되었습니까?Java 8에는 꼬리 호출 최적화 기능이 있습니까?
10
A
답변
9
내가 아는 한 Java 8에는 테일 호출 최적화가 없습니다. Afaik는 실제 컴파일러 트릭과 관련이 없습니다. 왜냐하면 그 컴파일러 트릭은 간단하기 때문에 보안 목적으로 콜 스택을 유지하기 때문입니다. 하지만 바이트 코드 재 작성기로 가능할 것으로 생각됩니다.
4
Java는 컴파일러 수준에서 TCO를 지원하지 않지만 람다 식을 사용하여 Java 8로 구현할 수 있습니다. Venkat Subramaniamin이 "Functional Programming in Java"에서 설명합니다.
감사합니다. –
그냥 확인해보십시오. 그것은 굉장합니다. –
해당 책의 발췌 부분을 인용하십시오. – toniedzwiedz