(Bevor ich: Ich werde Cabal für Alles verwenden, die Cabal in seinem Namen hat und hat etwas mit Haskell zu tun.)Warum wurde Cabal nicht zum kompletten Paketmanager ernannt?
die üblichen „Sie X aktualisieren musste Nachdem zu installieren Y, aber dies wird Abhängigkeits Z“-Ausgabe wieder den anderen Tag brechen, ich dachte, ich würde nur fragen: warum wurde Cabal kein vollständiges Paket-Manager so konzipiert, vor allem mit den folgenden Merkmalen:
- Versioning: Installieren Sie mehrere Versionen eines Pakets nebeneinander, lassen Sie Pakete das gewünschte auswählen ed Abhängigkeiten. Wenn keine Paketversion angegeben ist, verwenden Sie die neueste Version.
- Update Pakete - oder besser, auch installieren Sie die neueste Version.
- entfernen Pakete
- prüfen Paket Integrität
Sie sehen, wo diese Liste geht. Im Moment fühlt sich Cabal wie ein etwas ausgeklügeltes Build-System an (versuche herauszufinden, welche Version von Base dein Paket benötigt, wenn du es zum ersten Mal benutzen willst), die mit einem halbierten Paketinstallationsprogramm kommt.
So die Frage noch einmal: Warum wurde Cabal nicht ein voll funktionsfähiges Build/Package-System gemacht? Ich bin mir sicher, dass es eine Designentscheidung gab, die zum aktuellen Stand führte.
(Diese Frage etwas von a rant on Reddit inspiriert wurde, aber im Gegensatz zu diesem Kerl bedeuten nicht, dass jemand durch die oben zu beleidigen.) :-)
Diese Frage sollte wahrscheinlich auch auf reddit stehen - zu weit entfernt von der Art von Programmierfragen, die auf SO gehören. –
Aus den FAQ zu * Fragen, die hier gestellt werden können *: "von Programmierern häufig verwendete Software-Tools"? Prüfen. "praktische, beantwortbare Probleme, die für den Programmierberuf einzigartig sind"? Prüfen. – David
Bist du freiwillig, Cabal zu einem kompletten Paketmanager zu machen? –