Séminaire de Pierre-Étienne Meunier (senior research fellow, Maynooth University, Ireland), le 18 février 2021 à 14h : «Contrôle de version distribué asynchrone»

/, Equipe AROBAS, Recherche, Séminaires organisés à l'IBISC ou par des membres de l'IBISC/Séminaire de Pierre-Étienne Meunier (senior research fellow, Maynooth University, Ireland), le 18 février 2021 à 14h : «Contrôle de version distribué asynchrone»

Séminaire de Pierre-Étienne Meunier (senior research fellow, Maynooth University, Ireland), le 18 février 2021 à 14h : «Contrôle de version distribué asynchrone»

Pierre-Étienne Meunier (Senior research fellon, Maynooth University, Ireland) effectue un séminaire le jeudi 18 février 2021, 14, via Zoom.

Titre: Contrôle de version distribué asynchrone.

Résumé:

Deux grands paradigmes de travail collaboratif existent aujourd’hui, les clichés et les transformations:

– Les clichés (snapshots) sont utilisés par Git, SVN, Mercurial et leurs ancêtres, et ont l’avantage de représenter les données très simplement, mais l’inconvénient de ne pas pouvoir utiliser l’historique au moment de fusionner, ce qui occasionne un certain nombre de problèmes, et aboutissent irrémédiablement à une interface très compliquée, et à une perte de temps de travail importante.

– Les transformations (patchs) ont été utilisées dans le passé par des outils comme Darcs (http://darcs.net), mais leurs faibles performances les ont fait tomber en désuétude. En revanche, Darcs était basé sur des opérations mathématiques simples qui le rendait très intuitif.

En parallèle de ces deux paradigmes, le travail collaboratif synchrone a connu un développement important dans les vingt dernières années, avec l’émergence des CRDTs, largement utilisés dans les outils comme Google Docs. En revanche, ils ne modélisent pas les conflits, et sont donc inadaptés à du travail asynchrone.

Pijul est un système de contrôle de version qui utilise des idées de théorie des catégories, et des algorithmes de graphe, pour unifier ces deux approches, en conservant la performance des clichés et la simplicité et la fiabilité des patchs. Son algèbre de patchs lui permet de passer beaucoup mieux à l’échelle que ses concurrents.

Dans cet exposé, je présenterai la problématique, les différents enjeux algorithmiques, et un aperçu des différentes solutions.