2016-06-29 3 views
3

What does comparable mean in Elm?에 따르면 comparable은 유형 변수를 유형 변수를 잘 비교 가능한 내장 유형으로 제한하는 데 사용할 수있는 내장 유형 제약 조건입니다. 다음 질문이 마음에 듭니다. (알아 내기가 쉽지 않습니다)Elm의 유형 제약

  • 현재 Elm에는 다른 유형 제약 조건이 있습니까? 어딘가에 목록이 있습니까?
  • 내 형식 제약 조건을 어떻게 만들 수 있습니까? Elm은 Haskell Typeclasses와 같은 메커니즘이 없기 때문에 대답은 '아니오'라고 가정합니다.
  • 위의 내용이 true 인 경우 (사용자 정의 유형 제약 조건 없음), 이는 Elm에서 다형성이 상당히 제한적이라는 것을 의미합니까? 예를 들어, 지금 다음과 같은 것을 달성 할 수없는 것 같습니다. g (즉, f)의 인수로 사용할 수있는 (동일하지만 불확실한 유형의) 요소 목록을 허용하는 함수 f을 생성하고 싶습니다. List a 받아 형 a의 또한 inst 존재는 g(inst)comparable (int 치의 외에 의미)
+0

[이] (https://github.com/elm-lang/elm-compiler/issues/38) [two] (https://github.com/elm-lang/elm-compiler/)를 보았습니까? 이슈/1039) 타입 클래스에 관한 문제? – pdexter

+0

네, 저는이 두 가지를 보았습니다. OTOH, 필자는 'comparable'과 같은 개념이 있다는 것을 알았 기 때문에 확실하지 않았습니다. 느릅 나무의 상황은 무엇입니까? –

답변

3

를 만드는 것을 의미한다, 수레, 문자, 문자열,리스트, 튜플) appendable (문자열, 텍스트, 목록도 있습니다) 및 number (정수 및 부동 소수점 숫자). 필자는 권위있는 목록을 보지 못했습니다 (컴파일러 소스 외부).

당신 자신의 유사한 타이 클립을 정의 할 방법이 없습니다.

예,이 기능을 사용하여 작성할 수있는 기능이 제한됩니다. 아무도 Evan이 이러한 한계가 문제라고 확신하지 못했습니다.

+0

고맙습니다, 지금 꽤 분명합니다. 또한, 하스켈 개발자가 typeclasses를 강력하게 만들 수있는 모든 것들을 살펴보면 (에버 노트는 이것에 대해 꺼려한다는 것을 이해합니다 :) –

관련 문제