(Prima di iniziare: ho intenzione di utilizzare Cabal per tutto ciò che ha Cabal in suo nome e ha qualcosa a che fare con Haskell.)Perché Cabal non ha creato un gestore di pacchetti completo?
Avendo avuto il solito "è necessario aggiornare X installare Y, ma questo si romperà dipendenza problema Z" ancora una volta l'altro giorno, ho pensato appena chiedo: perché è stato Cabal non progettato per essere un gestore di pacchetto completo, in particolare con le seguenti caratteristiche:
- Versioning: installa più versioni di un pacchetto una accanto all'altra, lascia che i pacchetti scelgano il desiderio dipendenze. Se non è stata specificata alcuna versione del pacchetto, utilizzare l'ultima disponibile.
- Aggiornamento pacchetti - o meglio, anche installare la versione più recente.
- Rimuovere pacchetti
- check di integrità del pacchetto
Vedete dove questa lista sta andando. In questo momento, per me Cabal si sente come un sistema di compilazione un po 'sofisticato (prova a scoprire quale versione di Base richiede il tuo pacchetto quando vuoi iniziare ad usarlo per la prima volta), che viene fornito con un programma di installazione del pacchetto semi-cotto.
Quindi la domanda ancora: Perché Cabal non ha creato un sistema di compilazione/pacchetto completo? Sono sicuro che ci sia stata una decisione di progettazione che ha portato allo stato attuale.
(La domanda è stata in qualche modo ispirato da a rant on Reddit, ma contrariamente a quel ragazzo non significa offendere nessuno da quanto sopra.) :-)
Questa domanda dovrebbe probabilmente essere anche redditiva - troppo lontana dal tipo di domande di programmazione che appartengono a SO. –
Dalle domande frequenti su * domande da porre qui *: "strumenti software comunemente usati dai programmatori"? Dai un'occhiata. "problemi pratici e risolvibili che sono unici per la professione di programmatore"? Dai un'occhiata. – David
Ti stai offrendo volontario per arricchire Cabal in un gestore di pacchetti completo? –