2013-10-26 2 views
5

이 어떤 영향을 가져 않는이 같은 모듈의 일부 기능을 가져올 수 있습니다만 모듈의 일부 기능은 하스켈에서

SomeModule는 아마도 단지 funFoofunBar보다 더 많은 기능을 정의
import SomeModule(funFoo, funBar) 

. 이 좋은 습관인가? 이 일에 어떤 보상이 있습니까? 그것은 객체 코드를 더 작게 만드나요?

답변

7

모듈에서 가져 오기를 제한 할 때의 주된 장점은 다른 모듈 (또는 Prelude)과 충돌하는 이름을 가져 오지 않는 것입니다. 그것은 객체 코드를 작게 만들지 않습니다.

+6

내가 찾은 또 다른 장점은 모듈이하는 일에 대해 조금 알려줍니다. 'import control.Monad'를 보면 나는 많은 모나드 마법을 기대하고 있습니다 만,'import control.Monad (forM_)'을 보면 실제로 일어나는 모든 것이 부작용 목록을 반복하는 함수라는 것을 알고 있습니다. – kqr

관련 문제