Os ramos Git são, de fato, "endofuncionadores homeomórficos mapeando subvariedades de um espaço de Hilbert"?


51

Como todos sabemos:

O Git fica mais fácil depois que você entende que os ramos são endofuncores homeomórficos, mapeando subvariedades de um espaço de Hilbert

O que parece ser um jargão, mas por outro lado,

No total, uma mônada em X é apenas um monóide na categoria de endofunitores de X, com o produto × substituído pela composição dos endofunitores e a unidade definida pelo endofuncor de identidade.

é engraçado porque é verdade .

Posso evitar a fusão de erros lendo este texto simples ?


9
Como entusiasta do git e alguém que tem mestrado em matemática aplicada, suspeito que a resposta seja "não".
Joshin4colours

11
Parece que alguém tentou ler um livro de matemática, mas falhou.
tp1 16/09/14

11
Não entendo por que as pessoas estão votando para fechar com base em que o que estou pedindo não é claro. Estou perguntando se a frase que citei é factual. (A frase que citei é generalizada, como você pode confirmar com o Google.)
Larry OBrien

2
leitura recomendada: Discuta este $ {blog}
gnat

5
Uma vez que você passou algum tempo tentando entender o significado dessa frase, Git realmente pode parecer comparativamente mais fácil de entender do que antes ...
stakx

Respostas:


63

É uma piada, baseada na piada da mônada, mas sem realmente entender a piada da mônada.

A piada da mônada é engraçada em três níveis:

  1. tenta explicar o jargão matemático abstrato com um jargão ainda mais matemático, que é ainda mais abstrato
  2. no entanto, a explicação está realmente correta
  3. e depois de se aprofundar na teoria das categorias, você começará a ver as mônadas como "apenas um monóide na categoria de endofuncionadores"

A coisa do Git, no entanto, é apenas uma bobagem aleatória. Ele deve se parecer com a piada da mônada, e também pode ser uma piada na teoria do patch de darcs, mas, fundamentalmente, a pessoa que fez a piada não entendeu a piada da mônada.

Fontes:

Este é o tweet original que contém a citação :

Wil Shipley (@wilshipley) : Deus doce, eu odeio git.

Isaac Wolkerstorfer (@agnoster) : O wilshipley git fica mais fácil quando você obtém a idéia básica de que os ramos são endofuncionadores homeomórficos que mapeiam subvariedades de um espaço de Hilbert.

E este é um comentário sobre o Quora pelo autor original do tweet :

Para confirmar o que Leo disse, era uma piada. [...]

Foi concebido como firme na língua. Na verdade, eu amo o git, e acho que sua complexidade é exagerada. Ao mesmo tempo, simpatizo com o fato de que conselhos de git gurus para iniciantes podem acabar soando como bobagens inescrutáveis.

Não pretende ter um significado mais profundo. [...]

O Leo a quem ele está se referindo é outro respondente no mesmo tópico, um matemático, que basicamente explica por que isso não faz sentido. (Os espaços de Hilbert são contínuos, os remendos e as ramificações são discretas.)

Ele também explica que foi inspirado por este post do blog (Um Guia para o GIT usando analogias espaciais) , o que realmente faz sentido.


15
Isso é decepcionante.
Larry OBrien

3
@amon: eu adicionei uma citação do autor da piada, na qual ele explica que qualquer sentido que essa declaração possa fazer é pura coincidência: "As tentativas de analisá-la dessa maneira devem ser fúteis, mas, devido a um erro na realidade, você pode realmente fazer com que qualquer afirmação suficientemente ondulada seja adequada se você se esforçar o suficiente ".
Jörg W Mittag

11
+1 para discreto vs raciocínio contínuo para descartar porque esta afirmação é incorreta :)
joshin4colours

9
Eu sempre assumi que o autor da piada recebeu a piada da mônada, mas estava propositadamente descendo para a tagarelar como uma paródia. Uma daquelas coisas que começa plausível e se torna cada vez menos, até que apenas no final você possa ter certeza de que é uma bobagem. Parece caridoso concluir que ele não entendeu a piada de mônada.
Psr

11
Você pode achar útil essa explicação git bisect para explicar a piada. Observe o autor.

8

É uma piada, como confirmado pelo autor e a resposta de Jörg W Mittag explica em mais detalhes.

Mas a verdade pode ser mais estranha que a ficção ...

Houve um trabalho de formalização do controle de versão, em particular a teoria de patches de David Roundy, que é a base do Darcs (um sistema de controle de versão distribuído que precedeu o Bazaar, Git e Mercurial mais popular por alguns anos, mas nunca alcançou sua popularidade). O principal objetivo da teoria é modelar a fusão e, em particular, a resolução de conflitos. O wiki do Darcs tem uma introdução à teoria e alguns indicadores, além de uma bibliografia (não mantida tão desatualizada se você quiser uma visão recente sobre o assunto, mas lista um artigo de pesquisa de 2009 de Petr Baudiš ) e uma lista de palestras ( que inclui material mais recente). Há também um wikibook . Um artigo seminal éUma abordagem de controle de versão baseada em princípios de Andres Löh, Wouter Swierstra e Daan Leijen3 .

A teoria dos remendos leva a um modelo categórico, que foi explorado mais recentemente em Uma teoria categórica de remendos por Samuel Mimram e Cinzia Di Giusto e Teoria dos remendos homotópicos por Carlo Angiuli, Ed Morehouse, Daniel Moreira, Daniel R. Licata e Robert Harper . No trabalho de Mimram e Di Giusto, o modelo tem arquivos como objetos e patches como morfismos. Eu acho que faz da fusão de uma ramificação um functor - um endofunctor se você estiver trabalhando em um único repositório. "Endofuncor homeomórfico" não faz sentido para mim. E com a teoria da homotopia envolvida (um conceito de cálculo - esse é o ramo da matemática que estuda coisas como variedades e espaços de Hilbert - que foi recentemente aplicado a um modelo fundamental de matemática chamadohomotopia ), subvariedades de um espaço de Hilbert podem não estar tão distantes ...


Além disso, o Darcs é escrito em Haskell, então é construído em mônadas. :-)
Wyzard
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.