We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

What Python can learn from Haskell packaging

00:00

Formal Metadata

Title
What Python can learn from Haskell packaging
Title of Series
Part Number
109
Number of Parts
169
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Domen Kožar - What Python can learn from Haskell packaging Haskell community has made lots of small important improvements to packaging in 2015. What can Python community learn from it and how are we different? ----- Haskell community has been living in "Cabal hell" for decades, but Stack tool and Nix language have been a great game changer for Haskell in 2015. Python packaging has evolved since they very beginning of distutils in 1999. We'll take a look what Haskell community has been doing in their playground and what they've done better or worse. The talk is inspired by Peter Simons talk given at Nix conference: [Peter Simons: Inside of the Nixpkgs Haskell Infrastructure] Outline: - Cabal (packaging) interesting features overview - Cabal file specification overview - Interesting Cabal features not seen in Python packaging - Lack of features (introduction into next section) - Cabal hell - Quick overview of Haskell community frustration over Cabal tooling - Stack tool overview - What problem Stack solves - How Stack works - Comparing Stack to pip requirements - Using Nix language to automate packaging - how packaging is automated for Haskell - how it could be done for Python
Software testingRevision controlLibrary (computing)Computer programExecution unitModul <Datentyp>BuildingData typeLibrary (computing)Software testingComputer fileOpen sourceMetadataGoodness of fitDomain nameBitSoftwareContext awarenessDistribution (mathematics)Student's t-testMultiplication signDirectory serviceCodeProjective planeScripting languageComputing platformRight angleCASE <Informatik>Type theorySource codeGreatest elementPiVector spaceGenderNumberLecture/Conference
BuildingData typePauli exclusion principleSoftware testingRevision controlAbelian categoryFlagLibrary (computing)Default (computer science)Extension (kinesiology)Process (computing)Set (mathematics)FlickrIntegrated development environmentSpyware1 (number)Goodness of fitRun time (program lifecycle phase)Computer fileWebsiteCASE <Informatik>InformationNP-hardFlagPower (physics)Library (computing)Type theoryCodeSubsetLatent heatComputer configurationComputer programmingBuildingCondition numberBitProtein foldingLine (geometry)File formatFunctional (mathematics)Right anglePauli exclusion principleDefault (computer science)Front and back endsLecture/Conference
Pauli exclusion principleComputer fileLine (geometry)Revision controlClient (computing)Source codeTerm (mathematics)Stack (abstract data type)Revision controlHecke operatorType theoryIdentity managementDefault (computer science)Right anglePoint (geometry)CompilerError messageFunctional programmingHash functionMathematicsModulare ProgrammierungState of matterDistribution (mathematics)Social classArmSource codeSoftwareElectronic signatureAreaStability theoryWebsiteProcess (computing)Rule of inferenceForcing (mathematics)CASE <Informatik>Data managementLimit (category theory)Hacker (term)MereologyMultiplication signNetwork topologyMessage passingMachine visionSet (mathematics)Subject indexingInformationWindowSoftware developerConstraint (mathematics)Computer fileInformation securityLogic gateIntegrated development environmentSystem callSoftware maintenanceLine (geometry)Pauli exclusion principleSoftware testingStack (abstract data type)Imperative programmingState transition systemLecture/Conference
Computer-assisted translationFlagInterior (topology)Software testingStack (abstract data type)Computer fileIntegrated development environmentConfiguration spaceCASE <Informatik>Imperative programmingSet (mathematics)Data conversionCompilerDirectory serviceState transition systemProjective planeFluid staticsMultiplicationWrapper (data mining)Visualization (computer graphics)Connectivity (graph theory)Software developerVirtual realityRevision controlFlagStack (abstract data type)Greatest elementMereologySoftwareResolvent formalismField (computer science)Installation artLecture/Conference
Computer-assisted translationFlagInterior (topology)Software testingStack (abstract data type)Configuration spaceInheritance (object-oriented programming)ArmResultantResolvent formalismComputer fileWordFitness functionRight angleCompilerProjective planePower (physics)Perspective (visual)Integrated development environmentNumberState of matterScripting languageRepository (publishing)Fluid staticsHacker (term)Set (mathematics)DialectVideo gameHash functionNetwork topologyFormal languageData managementExpressionLatent heatCellular automatonIntegerInheritance (object-oriented programming)Revision controlConfiguration spaceSystem callFunctional (mathematics)Different (Kate Ryan album)Physical systemBinary codePatch (Unix)MiniDiscSpacetimeFunctional programmingElectronic mailing listDefault (computer science)InjektivitätSoftware testingWritingMechanism designMultiplication signPoint (geometry)Data dictionaryExpert systemSummierbarkeitProcess (computing)Local ringGodSoftwareDistribution (mathematics)View (database)Analytic continuationGroup actionState transition systemParsingLocally convex topological vector spaceBoom (sailing)1 (number)Limit of a functionComputing platformHypothesisSlide ruleFlagElectric generatorInternet service providerFunction (mathematics)Attribute grammarRecursionLecture/ConferenceProgram flowchart
Inheritance (object-oriented programming)Extension (kinesiology)Reverse engineeringCellular automatonComputer fileScripting languageFunction (mathematics)Subject indexingFunctional (mathematics)BitPower (physics)outputAuthorizationArithmetic progressionProjective planeOrder (biology)Physical systemHookingMetadataBuildingConfiguration spaceRecursionPoint (geometry)Set (mathematics)Inheritance (object-oriented programming)CompilerDifferent (Kate Ryan album)Greatest elementExtension (kinesiology)InformationProcess (computing)TextsystemDigital photographyDisk read-and-write headRevision controlSystem callMultiplication signForestReverse engineeringData structureCASE <Informatik>HypermediaOntologyUltimatum gameParameter (computer programming)MereologyArmComputer animation
Transcript: English(auto-generated)