하스켈의 Functor 인스턴스가 functor 법칙에 따라 (고유하게) 결정되는 지 궁금합니다. ghc 이후 는 그들이 최소한의 경우 다양한 고유해야한다는 것, 적어도 "평범"데이터 유형에 대한 Functor 인스턴스를 유도 할 수있다. 편의를 위해 의 Functor 정의와 펑 법은 다음과 같습니다 class Functor f where
fmap
저는 새로운 프로그래머입니다. 다른 클래스 중 하나와 밀접하게 관련된 몇 가지 (2-4) 작은 펑터 클래스를 만들어야 할 상황에 처했습니다. 기본 클래스는 GraphicsRenderer라고하며 기본적으로 단일 컴파일 단위 내에서 모든 OpenGL API 호출을 완전히 캡슐화하는 OpenGL을 감싸는 래퍼입니다. 모든 Functor는 GraphicsRende
트리의 정의를 functor와 foldable의 인스턴스로 만드는 것을 요구하는 hw 문제에 대한 코드를 작성했습니다. 나는 아래의 코드를 작성하는 경우 : import Data.Foldable
import Data.Monoid
data Tree a = Leaf a
| Node [Tree a]
deriving (Show)
i
에서 펑터를 Data.Map 만들기. 저는 자신의 펑터 typeclass를 만들고 Data.Map을 인스턴스로 만들려고합니다. 그래서 여기에 내가 시도 내용은 다음과 같습니다 import Data.Map as DataMap
import Data.List as DataList
class MyFunctor f where
myfmap ::
안녕하세요 저는 C++을 처음 접했고 템플릿 펑터에 관해서 질문을했습니다. 필자는 간단한 템플릿 펑터를 만들었지 만 반환하는 값은 항상 "1"입니다. 두 개의 값을 함께 추가하십시오. 내가 바로 내가 비교하고있어 경우라고 할 수 있습니까 .. 또한 class AddValue{
private:
int x;
public:
template
람다 함수에 속도 문제가 있습니다. void for_each_lit(
const OccurClause& cl
, std::function<void (const Lit lit)> func
);
기능 번 lit_diff_watches 실행 수백만, 그것은 예에 3.3s를 취 Lit Simplifier::lit_diff_watches(con
Data.AVL.Indexed.Tree에 대한 펑터 인스턴스를 정의하고 싶습니다. 트리의 상한 및 하한 경계를 저장하는 인덱스 유형 Key⁺이 트리의 값 유형 (또는 유형 집합)에 "의존"하는 방식 때문에 까다로운 것 같습니다. open import Relation.Binary
open import Relation.Binary.PropositionalEq
기본적으로 컨테이너 클래스를 구현하고 있습니다. 정렬 요청과 함께 전달되어야하는 비교 자 함수/functor에 따라 데이터를 정렬하는 메서드를 만들어야합니다. 메서드의 선언과 정의가 다른 파일 (.h와 .cpp)에 있기 때문에 템플릿을 사용하는 것이 문제가됩니다. 즉, 나는 방법을 만들고 싶다 : void sort(function/functor f);
저는 작업중인 AI에 대한 두 가지 휴리스틱 스의 성능을 비교하고 싶습니다. 하나는 FIFO 순서로 요소를 처리합니다. LIFO 순서에있는 다른 사람. 코드는 FIFO 순서로 요소를 처리하기 위해 Queue을 사용합니다. OOP에서 나는 Stack과 Queue에 의해 구현 된 Bag 인터페이스를 가질 것이고 Bag.push과 Bag.take을 사용하여 구조