«zipper» 태그된 질문

7
중첩 된 구조를 업데이트하는보다 깔끔한 방법
다음 두 가지 항목이 있다고 가정합니다 case class. case class Address(street: String, city: String, state: String, zipCode: Int) case class Person(firstName: String, lastName: String, address: Address) 다음 Person클래스 인스턴스 : val raj = Person("Raj", "Shekhar", Address("M Gandhi Marg", "Mumbai", "Maharashtra", 411342)) 내가 업데이트 할 경우 지금 zipCode의 raj나는이해야 할 것 …
124 scala  case-class  zipper 

1
Zipper가 Comonad 인 이유 이해
이것은 이전 질문에 대한 답변 에 대한 후속 조치 입니다. 나는 각 항목을 매핑 할 필요가 가정 a:A의 List[A]에 대한 b:B기능 def f(a:A, leftNeighbors:List[A]): B및 생성 List[B]. 당연히 map목록에 전화 를 걸 수는 없지만 목록 지퍼를 사용할 수 있습니다 . 지퍼는 목록을 이동하는 커서입니다. 현재 요소 ( focus) 및 인접 …

3
일반적으로 지퍼 코 모나드
모든 컨테이너 유형이 주어지면 (요소 중심) 지퍼를 형성 할 수 있으며이 구조가 Comonad임을 알 수 있습니다. 이것은 최근 다음 유형에 대한 또 다른 스택 오버플로 질문 에서 훌륭하게 자세히 탐구되었습니다 . data Bin a = Branch (Bin a) a (Bin a) | Leaf a deriving Functor 다음 지퍼로 data Dir …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.