lazy-evaluation

    4

    3답변

    내 첫 번째 haskell 프로그램으로 나는 이것을하려고 노력하고있다. 1에서 10을 얻는 것이 어렵다. 나는 정수의 무한한리스트를 만들고, 정렬하고, 처음 10을 가져 간다. 나의 의도는 설득하는 것이었다. 나 자신이 요구 한 결과에 엄격하게 (ahem) 이상인 것을 평가하지 않고 무한리스트로 작업 할 수 있었다. 내 코드는 .. module Main w

    4

    1답변

    일련의 숫자를 적절한 비트 수로 잘라내어 청크의 지연 시퀀스 (최하위 비트가 먼저)를 반환하는 Clojure 함수가 있습니다. 블록 크기를 채우기 위해 마지막 블록의 상위 비트를 채 웁니다. 게으름과 기능 유지하면서 패딩의 양을 기록하는 "최상의 방법 (tm)"에 대한 조언이 필요합니까? 지혜의 말씀을 높이 평가합니다. (defn block-seq

    4

    2답변

    다음 프로그램을 실행하면 "공간 오버 플로우 : 현재 크기 8388608 바이트"가 인쇄됩니다. this 및 this을 읽었지만 여전히 문제를 해결하는 방법을 모르겠습니다. 나는 foldr을 사용하고 있습니다. "tail recursive"가 보장되어서는 안 될까요? 강력한 재귀를 사용할 때 "공간 오버플로"를 방지해야한다는 것을 알기 전까지는 하스켈에 대

    15

    4답변

    은 레딧에 사람은 내 관심이 코드를 가져왔다 : main = do let ns = [print 1, print 2, print 3] sequence_ ns sequence_ $ reverse ns sequence_ $ tail ns ++ [head ns] head ns 여기에 무슨 것은 우리가 역처럼, 함께

    4

    1답변

    SWT 애플리케이션에서 "돋보기"(+ 및 -) 커서를 사용하고 싶습니다. that it is pretty easy to create a cursor for oneself을 알고 있습니다. 지금은 시간을 투자하고 싶지 않습니다. 누구나 내가 사용할 수있는 "확대"및 "축소"커서가있는 링크 또는 코드 니펫이 있습니까?

    0

    2답변

    많은 git-svn 저장소 (동시에)를 사용하여 모든 항목을 업데이트해야하는 번거 로움이되고 있습니다. 나는 이것을 자동화하는 스크립트를 작성하여 매일 아침 커피를 가져 오는 동안 실행할 수 있습니다. 은 기본적으로 내 흐름이 cd ~/module1 git svn fetch git checkout master git svn rebase git ch

    3

    3답변

    F # (다소 비슷합니다. FParsec)의 모나 딕 파서 - 결합 자 라이브러리를 작성했으며 이제 프로그래밍 언어 용 작은 파서를 구현하려고했습니다. 처음에는 완벽하게 잘 돌아간 하스켈 (Parsec)에서 코드를 구현했습니다. 중개 식의 구문 분석기는 서로 재귀 적으로 설계되었습니다. 기능의 순서는 중요하지 않으며, 하스켈이 아닌 엄격한 방법으로 평가되기

    1

    1답변

    AuditTrail 코드를 수정하여 ForeignKey 필드를 복사하지 않고 오히려 관련 필드를 복사합니다 (즉, 내 데이터베이스 테이블에 외래 키를 원하지 않습니다. 감사 모델). 내가 그렇게처럼 보이는 copy_field 기능을 작성했습니다 : def copy_field(field): while(isinstance(field, models.On

    6

    2답변

    그래서 나는 소수를 지연 생성하는 방법을 연구하고 있었고,이 모든 세 가지 정의를 생각해 냈습니다.이 세 정의는 모두 같은 방식으로 작동합니다. 각각의 새로운 정수가 이전의 소수 : 그것은 소수의 수 의 순서에 작업이 필요합니다 내가 생각 모든 정수 (대한 f_ = f (const True)을 재 계산 피할 수 있기 때문에 primes1 :: [Intege

    2

    5답변

    나는 과거 하스켈과 도박을 해왔고, 최근에 심각하게 그걸로 돌아 왔고, 나는 실제 세계의 하스켈을 읽고있다. 그들이 빛난 몇 가지 예는 아직 이해하지 못했습니다. 다음과 같이 : myLength [] = 0 myLength (x:xs) = 1 + myLength (xs) 이 작동 방식이 보이지 않습니다. 1이 실제로 추가되는 이유는 무엇입니까? 재귀