Libmapi писали индусы?
Есть ощущение, что некоторые части libmapi писали индусы. Напоминаю, что libmapi — библиотека для общения с Microsoft Exchange Server, к которой я пишу биндинг в Python с использованием ctypes.
Некоторые вызовы я предпочёл переписать на Python, так как код содержит баги и глупости. Например, мне приходит (в терминах Python) массив событий. Приходят два «слова», два числа, которые содержат дату/время старта и окончания. Числа приходят в минутах, например, чтобы узнать какой там указан день, нужно нацело разделить число на 1440 (количество минут в сутках) и прибавить один.
В итоге, я вычисляю всё вот так (часовой пояс я ещё не умею определять):
last = event_end - event_start
day = event_start // 1440
hour = (event_start - day * 1440) // 60
minute = event_start % 60
day += 1
Авторы libmapi делают куда затейлевее:
for (hour = 0; hour < 24; hour++) {
if (!((event_start - (60 * hour)) % 1440)) {
// значит мы нашли час, который указан в событии
day = ((event_start - (60 * hour)) / 1440) + 1;
last = event_end - event_start;
}
}
event_start — day * 1440 == event_start % 1440
Комментарий для dizzy57.blogspot.com:
Нахождение остатка разве не «дорогая» операция?
Хорошую религию придумали индусы.
Комментарий для ninjacolumbo.ya.ru:
Что мы, отдав концы, не умираем насовсем.
Комментарий для Евгения Степанищева:
Если бы индусские программисты проповедовали описанную религию, то они бы, наверное, не обращались бы со своей кармой так безрассудно (-:
Комментарий для gaius-julius.livejournal.com:
С тех пор как Пифагор придумал им перерождения, они очень легко отказываются от текущей «неудачной» жизни в сторону новой.
и как им не страшно-то умирать-то. Ведь если туп как дерево — родишься баобабом и будешь баобабом тыщу лет пока помрёшь.
Я практически уверен что моя ненавистная глючная стиральная машинка, которой живётся ой как несладко, была в прошлой жизни индусским программистом.
Жизнь другая, но карма-то у них персистентна (-:
А если серьёзно, то, помниться, цель — спрыгнуть с колеса перерождений путём правильной жизни.