C #과 Scala의 기술적 구현 차이점이 무엇인지, 그리고 두 솔루션이 구현 아이디어와 어떻게 비교되는지 , Brian Goetz 의 이메일 Peek Past lambda 에서 프로젝트 Lambda (JSR 335) 의 메일 링리스트로 전송 된 우려 사항에 대해 어떻게 생각 하십니까?
이메일에서 :
"어쩌면 람다는 내면의 실체가되어야하는데 실제로는 단순 할 것입니다."
그리고 더 :
세상에 대한 람다-물체 관점은이 가능한 미래와 충돌합니다. 세계에 대한 람다-함수 관점은 그렇지 않으며, 이러한 유연성을 유지하는 것은 객관의 출현으로 람다에게 부담을주지 않는 점 중 하나입니다.
결론:
Lambdas 기능은 문을 엽니 다. 람다는 개체를 닫습니다.
우리는 그 문이 열린 채로있는 것을 선호합니다.
그리고 Reddit 스레드 에 대한 사람의 의견 은 다음과 같습니다.
실제로 Neal Gafter에게 전자 메일을 보냈고 그의 설명 C #에 대한 제한된 이해와 현재 Java 디자인은 대의원이 실제로 객체 유형이 아니라 기능 유형이 아니라는 점에서 매우 유사합니다. 그는 Java가 C #의 람다의 단점에서 배우고 피해야한다고 생각합니다 (C #이 Java의 단점에서 배우고 처음에는 피했던 것처럼).
"Lambdas-are-functions"접근 방식이 "Lambdas-are-objects"보다 미래에 더 많은 기회를 제공하는 이유는 무엇입니까? 어떤 차이점이 있으며 코드 작성 방법에 어떤 차이점이 있는지 설명 할 수 있습니까?
스칼라의 것들이 "정상 작동"한다는 것을 알면서 C # / Java (8)에서 취했거나 제안 된 접근 방식에 대해 무언가를 놓치고 있다고 생각합니다. 아마도 하위 호환성에 대한 우려와 관련이 있습니까?