Cabal(소프트웨어)
Cabal (software)원저작자 | 아이작 포토츠니 존스 |
---|---|
개발자 | 던컨 쿠츠 |
초기 릴리즈 | 2005년 1월, | 전(
안정된 릴리스 | 3.6.2.0[1] / 2021년 10월, 전( |
저장소 | |
기입처 | 하스켈 |
운영 체제 | Unix와 같은 Microsoft Windows |
크기 | 0.4 메가바이트 |
이용가능기간: | 영어 |
유형 | 응용 프로그램 수준 패키지 관리자 |
면허증. | BSD |
웹 사이트 | www |
Haskell Cabal(애플리케이션과 라이브러리를 구축하기 위한 공통 아키텍처)은 소프트웨어 패키지의 패키징과 배포를 지원합니다.Haskell 플랫폼에 포함되어 있습니다.
역사
Cabal은 Haskell 소프트웨어 및 모듈의[citation needed] 패키징을 단순화하기 위해 도입되었습니다.GHC의 내부 매니저 ghc-pkg과 함께 Glasgow Haskell 컴파일러 버전 6.4에 기본 패키지 [2]매니저로 추가되었습니다.실제 바이너리[3] 캐벌과 라이브러리[4] 캐벌은 서로 다른 패키지로 개발됩니다.
개발 기간 내내 샌드박스[citation needed] 등 이른바 '카발 지옥'에서 벗어날 수 있는 추가 기능을 확보했습니다(아래 참조).
사용하다
Cabal 패키지는 표준 메타데이터 및 빌드 프로세스를 제공합니다.따라서 Cabal 패키지를 CPAN과 같은 소프트웨어 Hackage 커뮤니티 저장소에 업로드하는 툴을 개발하거나 Hackage에서 [3]원하는 패키지를 자동으로 다운로드, 컴파일 및 설치할 수 있습니다.
비판
Cabal은 이전에 글로벌 패키지 저장소를 기본적으로 사용했기 때문에 종속성이 있는 버전 경합이 Cabal hell로 이어질 수 있습니다.이 상태에서는 기존 패키지를 재설치하지 않으면 다른 패키지가 파손됩니다.[5][6]
2014년에는 Stackage라고 하는 보다 안정적인(그러나 출혈은 적은) Hackage 변형이 개발되었습니다.[7] 2015년에는 Haskell LTS와[citation needed] 툴 [8][9]스택으로 확장되어 문제를 공유하지 않았습니다.
Cabal v3는 [1]2019년에 출시되었습니다.새로운 빌드 스타일은 Nix 패키지 [10]매니저와 유사한 방법으로 Hell을 해결합니다.
레퍼런스
- ^ a b "Cabal changelog". Retrieved 2021-11-19.
- ^ "1.4. Release notes for version 6.4". GHC 6.4 user manual. Retrieved 2016-01-12.
- ^ a b "cabal-install: The command-line interface for Cabal and Hackage". Hackage. Retrieved 12 January 2016.
- ^ "Cabal: A framework for packaging Haskell software". Hackage. Retrieved 12 January 2016.
- ^ "Cabal/Survival - HaskellWiki". HaskellWiki. Retrieved 12 January 2016.
- ^ "How we might abolish Cabal Hell". Well-Typed - The Haskell Consultants. Retrieved 12 January 2016.
- ^ "Stackage Server". FP Complete. Retrieved 12 January 2016.
- ^ "ANNOUNCING: first public beta of stack". FP Complete. Retrieved 12 January 2016.
- ^ "What do Haskellers want? Over a thousand tell us".
Package management with cabal is the single worst aspect of using Haskell. Asked if improvements to package management would make a difference to their future choice of Haskell for a project, 38% said it would be "crucial" and a further 29% said it would be "important". Comments connected cabal with words like hell, pain, awful, sucks, frustrating, and hideous. Only this topic showed such grave dissatisfaction.
- ^ Mikhail Glushenkov. "Cabal 2.0". Retrieved 2021-01-25.
외부 링크

- 공식 웹사이트
- "The Haskell Cabal: A Common Architecture for Building Applications and Tools" (Isaac Jones, Simon Peyton Jones, Simon Marlow, Malcolm Wallace, Ross Patterson의 원래 제안서와 사양서, 버전은 Haskell Workshop, 2005)에 제출되었습니다.
- 캐벌[permanent dead link] 토크 -(슬라이드)