LINUX.ORG.RU

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

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

Очень мало задач требуют возможность менять типы данных без остановки выполнения программы.

Именно менять — не знаю, но создавать новые? Это из той же оперы. В питоне я могу создать класс в функции, заполнить его методами (в том числе статическими) и вернуть класс в вызывающий контекст. А потом вызвать статический метод в этом контексте. Это диспетчеризация в чистом виде, поскольку заранее про класс ничего неизвестно.

Очень мало задач

И вообще, это субъективное и некорректное утверждение. Обосновать ты его не сможешь, поскольку оно недоказуемо и неопровергаемо. Так-то можно вообще на голых сях любую задачу решить.

Любой, кто владеет метаклассами, применит вышеописанный трюк там, где это будет уместно. Лично я применял, чесслово. Другое дело, что большинство питонистов считают метаклассы «чёрной магией», и используют питон как «дёргалку библиотек».

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

Очень мало задач требуют возможность менять типы данных без остановки выполнения программы.

Именно менять — не знаю, но создавать новые? Это из той же оперы. В питоне я могу создать класс в функции, заполнить его методами (в том числе статическими) и вернуть класс в вызывающий контекст. А потом вызвать статический метод в этом контексте. Это диспетчеризация в чистом виде, поскольку заранее про класс ничего неизвестно.

Очень мало задач

И вообще, это субъективное и некорректное утверждение. Обосновать ты его не сможешь, поскольку оно недоказуемо и неопровергаемо.

Любой, кто владеет метаклассами, применит вышеописанный трюк там, где это будет уместно. Лично я применял, чесслово. Другое дело, что большинство питонистов считают метаклассы «чёрной магией», и используют питон как «дёргалку библиотек».