Garcia et al.의“일반 프로그래밍을위한 언어 지원에 대한 확장 비교 연구”논문에서. 일반 프로그래밍을위한 프로그래밍 언어 기능의 흥미로운 비교가 제공됩니다.
용어에 대한 간단한 설명과 함께 :
누구나이 프레임 워크 내에서 일반 프로그래밍에 대한 스칼라 지원을 테스트 할 수 있습니까? 즉, 가능한 경우 설명과 함께 첫 번째 테이블에 열을 추가하십시오.
Garcia et al.의“일반 프로그래밍을위한 언어 지원에 대한 확장 비교 연구”논문에서. 일반 프로그래밍을위한 프로그래밍 언어 기능의 흥미로운 비교가 제공됩니다.
용어에 대한 간단한 설명과 함께 :
누구나이 프레임 워크 내에서 일반 프로그래밍에 대한 스칼라 지원을 테스트 할 수 있습니까? 즉, 가능한 경우 설명과 함께 첫 번째 테이블에 열을 추가하십시오.
답변:
OP 의 의견 중 하나 에서 언급 했듯이이 표는 Scala가 일반적인 프로그래밍 지원을 비교하는 방법을 설명하는 표입니다. 소스 pdf로 연결
나중에 다음 요약이 제공됩니다.
스칼라
CONCEPT 패턴을 사용하여 다중 유형 개념, 다중 구속 조건을 모델링하고 소급 모델링을 지원할 수 있습니다. 또한 스칼라의 암시 적 지원은 추가 오버 헤드 측면에서 Java 및 C # 솔루션의 단점이 스칼라에 적용되지 않음을 의미합니다. 따라서 스칼라는 암묵적인 인수 추론과 소급 적 모델링 기준 모두에서 점수가 높습니다. 섹션 6은 연관된 멤버가 타입 멤버와 종속 메소드 타입을 통해 스칼라에서 지원되며 타입 멤버도 타입 별칭으로 사용될 수 있음을 보여줍니다.
섹션 3에 표시된 것처럼 Scala는 어휘 범위 모델을 지원합니다. 또한 유형 검사는 완전히 모듈 식입니다. 우선 순위가 겹치는 묵시적은 zipWithN이 보여주는 개념 기반 오버로드를 지원합니다.섹션 6.5의 예. 그러나 겹치는 모델은 하위 유형 지정 계층 구조를 사용하여 구성해야하므로 항상 바람직한 것은 아닙니다. 따라서이 기능의 점수는 충분합니다. 마지막으로 스칼라는 일류 함수를 완벽하게 지원하며 평등 제약도 지원합니다.
요약하자면 스칼라는 G (일반적으로 일반 프로그래밍을위한 언어로 특별히 설계된 G) 나 Haskell (일반적으로 프로그래밍 된 언어)과 같은 수준 또는 약간 더 나은 방식으로 일반 프로그래밍 기능을 지원하는 언어로 판명되었습니다 잘 알려진 것은 일반 프로그래밍을 매우 잘 지원한다는 것입니다).
그리고 요약에서 :
형식 멤버와 종속 메서드 형식은 언어에 추가 기능을 추가하고 두 메커니즘의 조합으로 관련 형식을 표현할 수 있습니다. 암시 적 (implicits)과 함께 타입 멤버와 종속 메소드 타입은 스칼라를 일반 프로그래밍에 사용할 수있는 언어로 만듭니다