Это будет история младшего разработчика из Яндекс.Паспорта о появлении предложения в стандарт С++, разработанного в соавторстве с Антоном [antoshkka][1] Полухиным. Как часто бывает в жизни, что-то новое началось с боли, а точнее — с желания её прекратить.
[![][2]][3]
Жила-была библиотека у меня на поддержке. Всё у неё было хорошо: собиралась под Linux, работала, не падала. Однажды пришли люди с просьбой (требованием) собрать её под Windows. Почему бы и нет? Но с первого раза не получилось. Корнем зла оказалась рукописная криптография, которая в какой-то момент умножала два 64-битных целых числа. Для сохранения результата такого умножения потребуется число на 128 бит, и в библиотеке использовался тип \_\_int128. Он прекрасен: имеет естественный интерфейс, поддерживается несколькими компиляторами (gcc, clang), работает без аллокации памяти, но главное — он есть.
[Читать дальше →][4]
[1]:
https://habrahabr.ru/users/antoshkka/
[2]:
https://habrastorage.org/files/d6a/8e6/82c/d6a8e682c00447e9b03880a1064970d4.jpg
[3]:
https://habrahabr.ru/company/yandex/blog/327080/
[4]:
https://habrahabr.ru/post/327080/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut