Являются ли ветви Git «гомеоморфными эндофункторами, отображающими подмногообразия гильбертова пространства»?

51

Как мы все знаем:

Git становится легче, когда вы понимаете, что ветви - это гомеоморфные эндофункторы, отображающие подмногообразия гильбертова пространства.

Что похоже на жаргон, но с другой стороны,

В общем, монада в X - это просто моноид в категории эндофункторов X, с произведением ×, замененным композицией эндофункторов и единицей, установленной единичным эндофунктором.

это смешно , потому что это правда .

Могу ли я избежать слияния ошибок, читая этот простой текст ?

Ларри Обриен
источник
9
Я подозреваю, что как энтузиаст мерзавца и тот, кто имеет степень магистра прикладной математики, ответ «Нет».
joshin4colours
1
Похоже, кто-то пытался прочитать книгу по математике, но не смог.
tp1
11
Я не понимаю, почему люди голосуют за закрытие на том основании, что то, что я спрашиваю, неясно. Я спрашиваю, является ли приведенная мною фраза действительной. (Выражение, которое я цитировал, широко распространено, как вы можете подтвердить с помощью Google.)
Ларри OBrien
2
рекомендуемое чтение: Обсудите этот $ {blog}
gnat
5
После того, как вы потратили некоторое время, пытаясь понять смысл этого предложения, Git действительно может казаться сравнительно более простым для понимания, чем раньше…
stakx

Ответы:

63

Это шутка, основанная на шутке с монадой, но на самом деле без шутки с монадой.

Шутка монады забавна на трех уровнях:

  1. он пытается объяснить абстрактный математический жаргон еще более математическим жаргоном, который является еще более абстрактным
  2. Однако объяснение на самом деле правильно
  3. и как только вы углубитесь в теорию категорий, вы на самом деле начнете видеть монады как «просто моноид в категории эндофункторов»

Git, однако, просто случайная тарабарщина. Он должен напоминать шутку с монадой, а также может быть ударом в теории патчей даркса, но, по сути, тот, кто шутит, не понимает шутку с монадой.

Источники:

Это оригинальный твит, содержащий цитату :

Вил Шипли (@wilshipley) : Сладкий бог, я ненавижу мерзавца.

Исаак Волкерсторфер (@agnoster) : @wilshipley git становится легче, когда вы поймете, что ветви - это гомеоморфные эндофункторы, отображающие подмногообразия гильбертова пространства.

И это комментарий на Quora от первоначального автора твита :

Чтобы подтвердить то, что сказал Лео, это было задумано как шутка. [...]

Он был задуман как насмешливый. Я действительно люблю мерзавца, и я думаю, что его сложность сильно раздута. В то же время, я сочувствую тому факту, что советы от мерзавцев-гуру новичкам могут в конечном итоге звучать как непостижимая тарабарщина.

Это не имеет более глубокого смысла. [...]

Лео , он имеет в виду другой отвечающему в том же потоке, математик, который в основном объясняет , почему это нонсенс. (Гильбертовы пространства непрерывны, участки и ветви дискретны.)

Он также объясняет, что он был вдохновлен этим сообщением в блоге (Руководство по GIT, использующему пространственные аналогии) , которое действительно имеет смысл.

Йорг Миттаг
источник
15
Это разочаровывает.
Ларри Обриен
3
@amon: Я добавил цитату автора этой шутки, в которой он объясняет, что любой смысл, который потенциально может иметь это утверждение, является чисто случайным: «Попытки проанализировать его таким образом должны быть тщетными, но из-за ошибки в реальности вы может на самом деле сделать любое достаточно волнообразное заявление, если вы постараетесь ».
Йорг Миттаг
1
+1 для дискретных против непрерывных рассуждений, чтобы исключить, почему это утверждение неверно :)
joshin4colours
9
Я всегда предполагал, что автор шутки действительно получил шутку с монадой, но нарочно спускался к тарабарщине как пародия. Одна из тех вещей, которая начинается правдоподобно и становится все менее заметной, и только в конце вы можете быть уверены, что она бессмысленна. Кажется неблагодарным заключить, что он не получил шутку с монадой.
PSR
1
Вы можете найти это объяснение git bisect полезным при объяснении шутки. Обратите внимание на автора.
8

Это шутка, подтвержденная автором, и ответ Йорг В. Миттага объясняет более подробно.

Но правда может быть страннее, чем вымысел ...

Была работа по формализации контроля версий, в частности теории исправлений Дэвида Раунди, которая является основой Darcs (распределенной системы контроля версий, которая на пару лет предшествовала более популярным Bazaar, Git и Mercurial, но так и не достигла их популярности). Основной целью теории является моделирование слияния и, в частности, разрешение конфликтов. В вики Darcs есть введение в теорию и несколько указателей, а также библиография (не поддерживается, так что устарела, если вы хотите получить недавний взгляд на эту тему, но в ней есть обзорная статья 2009 года Петра Баудиша ) и список выступлений ( который включает в себя более свежий материал). Там также викибук . Один оригинальный документПринципиальный подход к управлению версиями Андрес Лох, Вутер Свирстра и Даан Лейжен3 .

Теория патчей действительно приводит к категориальной модели, которая была недавно исследована в «Категориальной теории патчей » Самюэля Мимрама и Чинзии Ди Джусто и « Гомотопическая теория патчей » Карло Ангиули, Эда Морхауса, Дэниела Р. Ликата и Роберта Харпера . В работах Мимрама и Ди Джусто модель имеет файлы как объекты и патчи как морфизмы. Я думаю, что это делает слияние ветки функтором - эндофунктором, если вы работаете в одном репозитории. «Гомеоморфный эндофунктор» для меня не имеет смысла. И с включенной теорией гомотопии (концепция исчисления - это раздел математики, который изучает такие вещи, как многообразия и гильбертовы пространства), который недавно был применен к фундаментальной модели математики под названиемтеория гомотопического типа ), подмногообразия гильбертова пространства не могут быть так далеко ...

Жиль "ТАК - перестань быть злым"
источник
Кроме того, Darcs написан на Haskell, так что он построен на монадах. :-)
Wyzard