새 role system and annotations에 유형 (및 데이터) 패밀리 매개 변수가 역할 nominal에 있어야하는 이유를 알고 있습니다. 내가 ty 및 a이 nominal 역할을 얻을 것이라고 data family CoordinateRepresentation ty a :: *
를 선언 할 때 그래서 나는 기대했다. (실제 예제는 관련된 데이
하스켈에서 특정 함수 호출을 프로파일 링에서 제외시키는 좋은 방법이 있습니까? 내가 완전히 두 번째의 부부를 받아 사전의 큰 바이너리 덤프를로드하고있어 내가 해요. 내가 관심이있는 코드의 비트를 능가 참고로 COST CENTRE MODULE %time %alloc
read_wordlist Wordlists 93.6 98.3
solve So
애플리케이션을 빌드 할 때 캐럴이 자동으로 중간 코어를 파일에 출력하려고합니다. Cabad 파일의 ghc-options 필드에 -ddump-simpl 플래그를 추가 할 수 있지만 모든 것을 표준 출력으로 인쇄합니다. 모든 파일을이 파일로 리디렉션하도록 할 수있는 방법이 있습니까?
올바른 버전으로 내 코드를 반복, 나는 다음과 호기심을 가로 질러 온 반면 :는 {-# LANGUAGE RankNTypes #-}
module Foo where
import Data.Vector.Generic.Mutable as M
import Control.Monad.Primitive
-- an in-place vector function w
일부 언어 (예 : Go & 녹)에서는 프로그래머가 모든 소스 코드를 제거해야합니다. 일부 사용자에게는 극단적 인 경우 코드 유지 관리 및 가독성 측면에서 이점이 있습니다. 어떻게 하스켈에서이 기능을 활성화 할 수 있습니까? (가능한가요?) 예를 들어, 다음 코드에서 main에 사용되지 않았기 때문에 url2에 사용 불능 코드로 플래그를 지정하고 싶습니다.
하스켈에서 (GHC 사용) 특히 데이터 파괴와 관련하여 마이크로 하위 최적화를 어느 정도 최적화해야하는지 궁금합니다. 예를 들어, 두 개의 정렬 된 목록을 병합이 코드를 고려하십시오 merge :: Ord a => [a] -> [a] -> [a]
merge [] bs = bs
merge as [] = as
merge (a:as) (b:bs) =
필자는 ghc 크로스 컴파일러를 성공적으로 만들었습니다. 내 x64 Linux 시스템에서 armv6h (제 경우의 raspberry pi)에 대한 haskell 코드를 컴파일 할 수있게되었습니다. 라즈베리에서 hello world 프로그램을 성공적으로 실행했습니다. 아니요 다른 haskell 모듈에 많은 의존성이있는 실제 앱을 만들고 싶습니다. 내가 64에
cabal 샌드 박스를 "스택"하거나 "package.d"검색 경로를 지정할 수 있습니까? 자주 사용하는 패키지를 프로젝트에서 사용할 수 있지만 업데이트하지 않는 일반적인 샌드 박스에 설치하고 싶습니다. cabal.sandbox.config 파일에 world-file 매개 변수가 있지만 Cabal 소스에 대한 참조를 찾을 수 없습니다.
저는 GHC로 컴파일 된 haskell 프로그램의 메모리 소비를 벤치마킹하고 있습니다. 이렇게하기 위해 다음 명령 줄 인수를 사용하여 프로그램을 실행합니다 : +RTS -t -RTS. 다음은 출력 예입니다. <<ghc: 86319295256 bytes, 160722 GCs, 53963869/75978648 avg/max bytes residency (386
JSON 요청을 수신하여 처리하는 하스켈 데몬에서 작업 중입니다. 데몬의 작업이 복잡하기는하지만 주요 구조는 의도적으로 단순하게 유지됩니다. 내부 상태는 데이터 구조가있는 IORef이고 모든 스레드는이 IORef에 대한 원자 적 작업을 수행합니다. 그런 다음 방아쇠를 당길 때 가치가있는 스레드가 있습니다. 문제는 데몬이 메모리를 유출하고 있는데 그 이유를