Haskell의 표준 단어 기능을 구현하려고합니다. 문제를 해결하기 위해 State Monad를 사용하고 있습니다. 내 코드는 다음과 같습니다 type WorS = ([String],String,String)
words' :: State WorS [String]
words' = do
(lwords, words, x:xs) <- get
안녕하세요 내가 ML에 새로운 오전과 같은 데이터 타입의 트리 맵 기능을 쓰고 있어요 : 나는 내가 '알고 fun treemap f = fn LEAF x => LEAF (f x)
| CONS(y,z) => CONS (treemap f y, treemap f z);
: datatype tree = NIL | CONS of (tree * tr
haskel에서 오류가 발생하여 올바른 해결책을 찾지 못했습니다. 내 코드 : data MyTree = Leaf Float | Tree String MyTree MyTree deriving (Show, Eq, Ord)
asgCodeRec1 [] _ = []
asgCodeRec1 (a:b:c) (y:ys) = [Tree (y) (Leaf a) (Leaf
경우 비 철저한 패턴 , 10) - (182,74) : 경우의 비 한정적인 패턴 여기서 행을 나타내는 숫자는 "= case F '(pc : pcs) (readC pc 코어)"에서 "to "FAll 코어"((name, pcs ') : acc) ps " 나는이 문제가 (PC : PC)에 대한 패턴을 고갈시키는 것이라고 생각하지만 어떻게 해결할 수 있는지 이해할
승격 Nat = Suc Nat | Zero 유형을 입력하고 class C (a :: Nat) b을 만들고 싶습니다. GHC에 instance C Zero b과 instance C (Seq x) b이 모든 경우를 다루고 있기 때문에 클래스의 메소드를 사용할 때마다 C을 제약 조건으로 명시 적으로 선언 할 필요가 없다는 것을 설득 할 수있는 방법이 있습니까?
테이블을 인쇄하고 기본 쿼리를 수행 할 수있는 Haskell의 프로그램을 작성하고 있습니다. 다음 함수는 테이블을 출력 코드의 조각입니다 : printTable :: Table -> [String]
printTable [email protected](header:rows) = [addLine] ++ addHeader ++ [addLine] ++ addRo
누군가가 저에게 철저하지 않을 수있는 haskell 코드의 일부를 식별하는 데 도움이 될지 궁금합니다. 목록의 끝 부분에서 기본 사례가 어떻게 충족되지 않는지 나는 알 수 없습니다. 덕분에 많은 조니 벤자민 호지 슨이 언급 한 바와 같이, 당신은 ( [] 반대로 (_ : _))에 rules 문자열이 비어있는 경우 일치하지 않은하지만 Stack입니다 type
내일 필자는 기능적 프로그래밍에 대한 소개를 완료하기 위해 시험을 준비하고 있지만 이해할 수없는 것이 하나있다. 그가하는 일은 그가 목록에서 첫 번째 요소를 소요하고 나머지 계속 것입니다 test [] = []
test (x:xs) = test (xs)
: 나는 같은 프로그램을 할 때마다 . 왼쪽에 하나만있을 때마다 xs은 []이어야하며 차례로 tes