LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

Жаль из EFL удалили прекрасные сообщения типа “SPANK! SPANK! SPANK! Naughty programmer!” и “You bitch!”. Но я всё ещё обожаю этот потрясающий шедевр сишного безумия:

Our beloved EFL main developer, whose name I dare not say or I go on a rampage, complained he had tons of bug reports about crashes etc. Something about passing wrong Evas_Objects to wrong functions. He decided to tackle the problem in the next version. I’ll let you guess which solution he choose:

   1. Incorporate type safety.
   2. Give some meaningful names for all typedefs, if type safety is too hard, so people would at least see what goes where.
   3. Don’t use pointers as pointers. Split the bits in them into 3 (or 4) groups, which would be cast to a numerical indexes into 3- (or 4-) dimensional hash map, which in turn results in a real pointer to function + object, and call it, if such exist. If not, don’t do anything and don’t give the programmer any feedback. Oh, and implement this in a way that makes the absolute maximum objects your process can have equal to 512. But don’t forget to not warn anyone when the limit gets exceed, but call given function on a random object which causes hash collision.

Small hint: it’s not 1 or 2. Welcome to the 21st century programming!

Тыц: https://what.thedailywtf.com/topic/15001/enlightened/

Бонусом для тех, кто совсем !Ъ, по ссылке можно почитать срач с самим Растерманом (Carsten_Haitzler, появляется на 5 странице комментов), где он пишет что дескать всё правильно и вы все просто лалки анскильные.

Исправление hateyoufeel, :

Жаль из EFL удалили прекрасные сообщения типа “SPANK! SPANK! SPANK! Naughty programmer!” и “You bitch!”. Но я всё ещё обожаю этот потрясающий шедевр сишного безумия:

Our beloved EFL main developer, whose name I dare not say or I go on a rampage, complained he had tons of bug reports about crashes etc. Something about passing wrong Evas_Objects to wrong functions. He decided to tackle the problem in the next version. I’ll let you guess which solution he choose:

   1. Incorporate type safety.
   2. Give some meaningful names for all typedefs, if type safety is too hard, so people would at least see what goes where.
   3. Don’t use pointers as pointers. Split the bits in them into 3 (or 4) groups, which would be cast to a numerical indexes into 3- (or 4-) dimensional hash map, which in turn results in a real pointer to function + object, and call it, if such exist. If not, don’t do anything and don’t give the programmer any feedback. Oh, and implement this in a way that makes the absolute maximum objects your process can have equal to 512. But don’t forget to not warn anyone when the limit gets exceed, but call given function on a random object which causes hash collision.

Small hint: it’s not 1 or 2. Welcome to the 21st century programming!

Тыц: https://what.thedailywtf.com/topic/15001/enlightened/

Бонусом для тех, кто совсем !Ъ, по ссылке можно почитать срач с самим Растерманом, где он пишет что дескать всё правильно и вы все просто лалки анскильные.

Исходная версия hateyoufeel, :

Жаль из EFL удалили прекрасные сообщения типа “SPANK! SPANK! SPANK! Naughty programmer!” и “You bitch!”. Но я всё ещё обожаю этот потрясающий шедевр сишного безумия:

Our beloved EFL main developer, whose name I dare not say or I go on a rampage, complained he had tons of bug reports about crashes etc. Something about passing wrong Evas_Objects to wrong functions. He decided to tackle the problem in the next version. I’ll let you guess which solution he choose:

    Incorporate type safety.
    Give some meaningful names for all typedefs, if type safety is too hard, so people would at least see what goes where.
    Don’t use pointers as pointers. Split the bits in them into 3 (or 4) groups, which would be cast to a numerical indexes into 3- (or 4-) dimensional hash map, which in turn results in a real pointer to function + object, and call it, if such exist. If not, don’t do anything and don’t give the programmer any feedback. Oh, and implement this in a way that makes the absolute maximum objects your process can have equal to 512. But don’t forget to not warn anyone when the limit gets exceed, but call given function on a random object which causes hash collision.

Small hint: it’s not 1 or 2. Welcome to the 21st century programming!

Тыц: https://what.thedailywtf.com/topic/15001/enlightened/

Бонусом для тех, кто совсем !Ъ, по ссылке можно почитать срач с самим Растерманом, где он пишет что дескать всё правильно и вы все просто лалки анскильные.