Cabal (software)
| Cabal | |
|---|---|
| Original author | Isaac Potoczny-Jones |
| Developer | Duncan Coutts |
| Initial release | January 2005 |
| Stable release | |
| Repository | |
| Written in | Haskell |
| Operating system | Unix, Unix-like, Windows |
| Platform | IA-32, x86-64 |
| Available in | English |
| Type | Application level package manager |
| License | BSD |
| Website | www |
The Cabal (common architecture for building applications and libraries) is a type of package manager to aid in packaging and distributing software packages, in the forms of application software and libraries, for the programming language Haskell.
History
[edit]Cabal was introduced to simplify packaging of Haskell software and modules. It was added to the Glasgow Haskell Compiler in version 6.4 as the default package manager,[1] alongside GHC's internal manager ghc-pkg. Its approach has changed significantly over the course of its development, moving from global package installation to sandboxed builds, and eventually a Nix-inspired solution of local builds with global caching,[2] which became the default in 2019.
Use
[edit]Cabal packages provide a standard set of metadata and build process; thus, it is possible to develop tools to upload Cabal packages to the CPAN-like community repository of software, Hackage, or even allow automated downloading, compiling, and installing of desired packages from Hackage.[3]
References
[edit]- ^ "1.4. Release notes for version 6.4". GHC 6.4 user manual. Retrieved 2016-01-12.
- ^ "Announcing cabal new-build: Nix-style local builds". Retrieved 1 October 2019.
- ^ "cabal-install: The command-line interface for Cabal and Hackage". Hackage. Retrieved 12 January 2016.