metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-12-07 11:15 am

О вычислениях на системах типов

Почему-то использование систем типов для всяких извращений, типа "расчеты на с++ шаблонах" или там HList или SYB в хаскеле меня бесит. Код получается выглядящим весьма странно и малочитабельно. Предположительно, метапрограммирование типа TemplateHaskell выглядело бы понятнее и логичнее - вместо вычислений на безумных свойствах систем типов используются обычные вычисления на самом языке.

[identity profile] potan.livejournal.com 2009-12-07 10:46 am (UTC)(link)
Scheme и прочие лиспы.
Или OCaml, хотя он и без шаблонов местами страшновато смотрится.

[identity profile] antilamer.livejournal.com 2009-12-07 11:08 am (UTC)(link)
С приходом type families извращений стало гораздо меньше.

[identity profile] nivanych.livejournal.com 2009-12-07 02:03 pm (UTC)(link)
Зависимые типы, можно сказать,
для того и нужны, чтобы сделать
вычисления на типах простым и наглядным.

[identity profile] udpn.livejournal.com 2009-12-07 07:19 pm (UTC)(link)
Метакласс, не воруй идеи. Я уже разрабатываю =)

Кстати говоря, если воспользоваться этим утверждением как парадигмой программирования, из него вытекает множество весьма забавных свойств языка.

Самое опасное место — не переборщить со степенями свободы. Чрезмерная синтаксическая или семантическая свобода приводит к совершенно нечитаемому коду.

[identity profile] lionet.livejournal.com 2009-12-07 07:32 pm (UTC)(link)
SYB — это не извращение с системой типов. Это работа языком с предопределённой парой Typeclass'ов. Никаких извращений.