gimmesilver's blog

Agbird.egloos.com

포토로그



태그 : 하스켈 요약보기전체보기목록닫기

1 2

하스켈을 이용한 병렬 프로그래밍...2

 하스켈은 STM 동기화를 위한 별도의 모나드 및 메모리 저장 타입이 존재한다는 특징이 있습니다. 하스켈 STM을 위한 메모리 타입으로는 TVar, TArray, TChan, TMVar가 있습니다. 각각 IORef, Array, Chan, MVar에 해당하는 트랜잭션 메모리입니다. 참고로 IORef, Array, Chan, M...

하스켈을 이용한 병렬 프로그래밍...1

Software Transactional Memory(STM) - '만약 다른 놈이 방해했으면 난 다시 시도한다.' 예, 병렬 프로그래밍(혹은 멀티 쓰레딩 프로그래밍이나 동시성 프로그래밍이라고도 불리는) 은 어렵습니다. - 여러 가지 이유가 있겠지만 - 일반적으로 1) 특정 상황에 대한 재현이 힘들고 2) 프...

하스켈로 웹크롤러 구현하기...5

이번엔 파섹을 이용해 html 문서에서 링크 url을 추출하는 소스를 설명하겠습니다. 저는 링크 추출을 위해 다음과 같은 단계를 거치도록 구현했습니다.1) 태그 추출: '<'문자와 '>'문자 사이에 있는 태그 정보를 추출합니다. 이 때 주석, 자바 스크립트 소스의 경우 태그가 아닌데도 '<' 문자가 나올 수 있으므로 주석과 자바...

하스켈로 웹크롤러 구현하기...4

앞서 예고드린대로 이번에는 서버에서 전송받은 웹문서에서 <a href> 태그에 있는 링크 url 을 추출하는 소스를 설명하기 위해 우선 하스켈에서 파싱 구문을 처리하는 방법에 대해 소개하겠습니다.저는 html 파싱을 위해 Parsec 이라고 하는 파싱 라이브러리를 사용했습니다. 파섹은 모나드 기반의 라이브러리인데 대단히 직관...

하스켈로 웹크롤러 구현하기...3

하스켈로 웹 크롤러 구현하기...1 에 올린 소스 내용을 하나씩 설명하도록 하겠습니다.이 웹크롤러는 다음과 같은 방식으로 동작합니다.1. 먼저 실행 인자로 최대 큐에 저장가능한 URL 갯수와 시작 지점이 될 seed URL 리스트를 받습니다.2. 1에서 받은 실행 인자들을 이용해 URL리스트를 저장할 큐를 만듭니다.3. 큐에서 URL을 하나 꺼내 HTT...

하스켈로 웹크롤러 구현하기...1

간만에 하스켈 관련 글을 올립니다...이번에는 간단한 웹 크롤러를 하스켈로 구현해 보겠습니다. 제가 지금 다니고 있는 회사에 입사할 때 받았던 지원 과제가 바로 '간단한 웹 크롤러 구현하기'였습니다. (정확하게는 웹 크롤러와 인덱스 생성기 두 개인데 이제는 과제가 바뀌었습니다.)그 때는 C++로 구현했었고 C++에서는 플랫폼 독립적으로 사용할 수 있는 ...
1 2