Cabal (mjukvara)
Originalförfattare | Isaac Potoczny-Jones |
---|---|
Utvecklare | Duncan Coutts |
Initial release | januari 2005 |
Stabil frisättning | 3.8.1.0 / augusti 2022
|
Förvar | |
Skrivet i | Haskell |
Operativ system | Alla Unix -liknande Microsoft Windows |
Storlek | 0,4 megabyte |
Tillgänglig i | engelsk |
Typ | Pakethanterare på applikationsnivå |
Licens | BSD |
Hemsida |
Haskell - kabalen ( av gemensam arkitektur för att bygga applikationer . och bibliotek ) hjälper till vid paketering och distribution mjukvarupaket Den finns i Haskell-plattformen .
Historia
Cabal har introducerats för att förenkla paketeringen av Haskell-programvara och moduler [ citat behövs ] . Den lades till i Glasgow Haskell Compiler version 6.4 som standardpakethanterare, tillsammans med GHC:s interna manager ghc-pkg. Den faktiska binära kabalen och biblioteket Cabal är utvecklade i olika paket.
Under hela dess utveckling har den fått ytterligare funktioner, såsom sandlådor [ citat behövs ] , som gör det möjligt att undkomma det så kallade Cabal-helvetet (se nedan).
Använda sig av
Cabal-paket tillhandahåller en standarduppsättning av metadata och byggprocess; sålunda är det möjligt att utveckla verktyg för att ladda upp Cabal-paket till det CPAN -liknande gemenskapslagret av programvara, Hackage , eller till och med möjliggöra automatisk nedladdning, kompilering och installation av önskade paket från Hackage.
Kritik
Cabal använde tidigare ett globalt paketförråd som standard, versionskonflikter i beroenden kunde leda till Cabal hell , ett tillstånd där vissa paket inte kunde installeras utan att installera om redan befintliga och därför bryta de andra paketen.
2014 skapades en mer stabil (men mindre bleeding edge) variant av Hackage kallad Stackage . Under 2015 utökades den med Haskell LTS [ citat behövs ] och verktygsstacken , som inte delar dess problem.
Cabal v3 släpptes 2019. En ny byggstil löser fan på ett sätt som liknar Nix-pakethanteraren .
externa länkar
- Officiell hemsida
- "The Haskell Cabal: A Common Architecture for Building Applications and Tools" - (det ursprungliga förslaget och specifikationen, av Isaac Jones, Simon Peyton Jones , Simon Marlow , Malcolm Wallace och Ross Patterson; en version skickades till Haskell Workshop, 2005 )
- Cabal talk [ permanent död länk ] -(bilder)