LINUX.ORG.RU

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

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

Конечно же, нет.

http://en.wikipedia.org/wiki/Initial_algebra. List как тип (конструктор типа) это эндофунктор на Type, то есть List : Type -> Type с сигнатурой 1 + A * _, сам ADT получается отсюда уникально как начальная алгебра для данного эндофунктора.

АДТ - не функторы.

Ещё - открываем «Basic Category Theory for Computer Scientists» и ищем в индексе functor -> List.

Update: и ещё - http://ncatlab.org/nlab/show/initial algebra of an endofunctor.

Нет, конечно же. Отображение на типах не может быть функтором, никак.

Нет, конечно. Вот же перед глазами весь код начиная с категорий и далее до функторов, эндофункторов, категории Type, эндофункторов на ней и доказательства что List это такой эндофунктор. Функторные законы доказаны тоже, прошу заметить (экстенсионально, правда).

Не знаю. По построению, видимо.

Ага, а вопрос был «почему» слитно. Ну ладно.

На что?

«макросы, в отличии от систем типов, это _актуальное_ направление в исследованиях» - на эти самые актуальные исследования.

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

Конечно же, нет.

http://en.wikipedia.org/wiki/Initial_algebra. List как тип (конструктор типа) это эндофунктор на Type, то есть List : Type -> Type с сигнатурой 1 + A * _, сам ADT получается отсюда уникально как начальная алгебра для данного эндофунктора.

АДТ - не функторы.

Ещё - открываем «Basic Category Theory for Computer Scientists» и ищем в индексе functor -> List.

Нет, конечно же. Отображение на типах не может быть функтором, никак.

Нет, конечно. Вот же перед глазами весь код начиная с категорий и далее до функторов, эндофункторов, категории Type, эндофункторов на ней и доказательства что List это такой эндофунктор. Функторные законы доказаны тоже, прошу заметить (экстенсионально, правда).

Не знаю. По построению, видимо.

Ага, а вопрос был «почему» слитно. Ну ладно.

На что?

«макросы, в отличии от систем типов, это _актуальное_ направление в исследованиях» - на эти самые актуальные исследования.