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

Pijul: Sane Version Control

00:00

Formale Metadaten

Titel
Pijul: Sane Version Control
Untertitel
Fast, distributed, easy: pick any three
Serientitel
Anzahl der Teile
Autor
Mitwirkende
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
This talk is about a new distributed version control system written in Rust, based on category theory to define conflicts properly, but nevertheless as fast as even the fastest competitors. Its main distinctive feature is to implement the naive intuition of how distributed version control system should work: a branch in a repository is just an (unordered) set of patches. This makes it really easy to use, which we believe has the potential to help beginners collaborate with others, and get non-programmers use version control for their work. Our tool can also simplifying the workflows of big projects, especially since it handles big codebases faster than others. Moreover, the solid theory means it is easy to understand and predict what it does, which makes it easy to script and reuse in other projects. While previous systems based on this idea failed to compete in speed with the more widely-used tools out there, we invented a new data structure to efficiently handle asynchronous parallel contributions to a repository. We believe our construction of this datastructure can be reused in other contexts, especially since Rust is really well-suited to parallel computing. This talk will explain the architecture of the software, and what made Rust the best tool for writing it. We'll also talk about a few open problems, both about the theory and the implementation.
Ganze ZahlKontrollstrukturVersionsverwaltungHackerSystemprogrammierungDatenfeldAppletProgrammierungFunktionalTypentheorieOperations ResearchROM <Informatik>Singuläres IntegralAssoziativgesetzRechter WinkelFunktionalFunktionale ProgrammierspracheAggregatzustandInformatikCodeDistributionenraumVersionsverwaltungDatenverwaltungTLSHash-AlgorithmusInstantiierungSoftwareExpertensystemHackerSchlüsselverwaltungBildschirmfensterSpeicherabzugPatch <Software>Ordnung <Mathematik>ZentralisatorMultiplikationsoperatorE-MailElektronische PublikationTypentheorieDokumentenserverGamecontrollerDatenfeldPhysikalisches SystemArithmetisches MittelProjektive EbeneHalbleiterspeicherNichtlinearer OperatorCASE <Informatik>Schreib-Lese-KopfSystemaufrufInformationsspeicherungGlobale OptimierungProgrammiergerätGleitendes MittelKnotenmengeSoftwareentwicklerDatenflussPASS <Programm>Analytische MengeXMLUMLComputeranimation
KontrollstrukturVersionsverwaltungFunktionalSinguläres IntegralAssoziativgesetzGerade ZahlPatch <Software>KommutativgesetzWurm <Informatik>AlgorithmusPatch <Software>ProgrammfehlerElektronische PublikationMereologieZahlenbereichVersionsverwaltungResultanteSpeicherabzugBildgebendes VerfahrenVertauschungsrelationDifferenteGeradeKryptologieSensitivitätsanalyseAssoziativgesetzKategorie <Mathematik>Ordnung <Mathematik>Physikalisches SystemEinsImplementierungAlgebraisches ModellHochdruckInstantiierungRechenschieberVerknüpfungsgliedDokumentenserverProgrammbibliothekCodeAlgorithmusStrategisches SpielRechter WinkelTelekommunikationGüte der AnpassungOffice-PaketVerzweigendes ProgrammOrtsoperatorKomplex <Algebra>MultiplikationsoperatorPunktSoftwareentwicklerComputeranimation
AlgorithmusPatch <Software>MathematikPhysikalische TheorieAllgemeine RelativitätstheorieTransformation <Mathematik>Kategorie <Mathematik>VertauschungsrelationDiagrammElektronische PublikationFormale SpracheComputeranimation
GleichheitszeichenGeradeFreewareComputervirusOperations ResearchTranslation <Mathematik>DokumentenserverPatch <Software>Physikalische TheorieVersionsverwaltungStochastische AbhängigkeitKommutativgesetzInverseGerade ZahlAlgorithmusTypentheorieMathematikObjekt <Kategorie>ROM <Informatik>ServerClientProtokoll <Datenverarbeitungssystem>Patch <Software>Kategorie <Mathematik>Komplex <Algebra>Physikalische TheorieVersionsverwaltungGeradeMultiplikationsoperatorPhysikalisches SystemKonstruktor <Informatik>MereologieDokumentenserverFreewareAggregatzustandSoftwareentwicklerElektronische PublikationMAPNichtlinearer OperatorTranslation <Mathematik>Ordnung <Mathematik>GraphCASE <Informatik>Transformation <Mathematik>ZeitrichtungInstantiierungDiagrammAlgebraisches ModellWort <Informatik>TypentheorieImplementierungRechter WinkelMomentenproblemResultanteAlgorithmusHochdruckInverseZeichenvorratSchlussregelDeterministischer ProzessPunktDifferenteBenchmarkReelle ZahlTeilbarkeitZahlenbereichRechenschieberMathematisches ObjektDatentypSoundverarbeitungAssoziativgesetzErhaltungssatzVollständigkeitCodeProgrammiergerätGebäude <Mathematik>DatenstrukturAbstraktionsebeneBitQuadratzahlGraphfärbungLogarithmusLinearisierungFunktion <Mathematik>MathematikComputeranimation
Objekt <Kategorie>TypentheorieMathematikAlgorithmusROM <Informatik>ServerClientProtokoll <Datenverarbeitungssystem>Mini-DiscTransaktionTopologieProgrammbibliothekDatenbankKombinatorPrototypingVerkettung <Informatik>UnternehmensarchitekturRekursive FunktionMAPZeiger <Informatik>LoopWeb-SeiteKeller <Informatik>sinc-Funktionp-BlockIterationTopologieProgrammierungElektronische PublikationStandardabweichungGüte der AnpassungElement <Gruppentheorie>ZahlenbereichKonstanteMailing-ListeWort <Informatik>Zeiger <Informatik>ProgrammbibliothekProdukt <Mathematik>Protokoll <Datenverarbeitungssystem>PhasenumwandlungServerBefehl <Informatik>ClientQuick-SortPrototypingHalbleiterspeicherNeuroinformatikAggregatzustandArithmetisches MittelSchreib-Lese-KopfKeller <Informatik>Array <Informatik>Web-SeiteSelbst organisierendes SystemRechter WinkelOrdnung <Mathematik>Rekursive FunktionMultiplikationsoperatorGeradeGleitendes MittelWurzel <Mathematik>SystemaufrufHoaxMomentenproblemSchreiben <Datenverarbeitung>FunktionalFormale SpracheSoftwareentwicklerBildschirmfensterMessage-PassingSpeicherverwaltungMAPNichtlinearer OperatorFront-End <Software>ComputersicherheitProjektive EbeneDatenbankFunktionale ProgrammierspracheSoftware Development KitFreewareInstantiierungMini-DiscFlächeninhaltKomplexitätstheorieGreen-FunktionVirtuelle MaschineCodeInstallation <Informatik>DatensatzReflexiver RaumKraftRechenwerkReelle ZahlLoginExpertensystemZentrische StreckungCASE <Informatik>MereologieMapping <Computergraphik>ParametersystemVerknüpfungsgliedVektorpotenzialVersionsverwaltungLogarithmusTwitter <Softwareplattform>Arithmetische FolgeVerzweigendes ProgrammDatenverwaltungTropfenImplementierungAbstraktionsebeneComputeranimation
Ganze ZahlComputeranimationXMLUML
Transkript: English(automatisch erzeugt)