Сообщение Re[12]: Опциональные типы от 27.02.2017 16:46
Изменено 27.02.2017 16:56 vdimas
Re[12]: Опциональные типы
Здравствуйте, VladD2, Вы писали:
V>>Не надо меня перевирать:
VD>Помилуй! Никто и не собирался перевирать. Вот твои исходные утверждения:
VD>
Самое смешное тут то, что про ОСaml тебе несколько лет назад говорил именно я, предлагая возможность описывать variant value SomeVariant и даже давал пример мапинга такого описания на потенциальный генерируемый код.
В общем, OCaml — это не чистый ФП. Это гибридный язык, с мутабельностью, ООП и даже unsafe в шаговой доступности, как и Nemerle — тоже гибридный язык.
В общем, я одно время подробно изучал как унутре работают языки из семейства Standard ML и Хаскель — варианты представлены обычными ссылочными типами, над которыми трудится GC.
Ну и, справедливости ради, у тебя не F(T) из исходного утверждения:
К тому же, ты малость потерял контекст. Следующее в той же ветке моё сообщение:
http://www.rsdn.org/forum/philosophy/6705449.1
более подробно раскрывает мою мысль:
можно использовать ссылочные типы как nullable, а для non-nullable ввести ДРУГОЙ тип.
И там же далее по ветке токается та идея, что для боксированного представления Some и None последний можно представить просто через null. Именно для обоснования такой идеи я напомнил, что в ФП-языках алгебраики почти всегда ссылочные.
В общем, ты вырвал утверждение из контекста.
Оно было не само по себе, а в кач-ве аргумента для описанного решения.
V>>Не надо меня перевирать:
VD>Помилуй! Никто и не собирался перевирать. Вот твои исходные утверждения:
VD>
VD>Я тебе показал используемый на практике ValueOption в функциональном языке, что полностью опровергает твои утверждения.VD>Например, в ФП языках некий Т был value-тип (ну вот так компилятор решил), а после заворачивания F(T) всегда получаем ссылочный тип. Итого, храним лишнюю ссылку вместо значения.
Самое смешное тут то, что про ОСaml тебе несколько лет назад говорил именно я, предлагая возможность описывать variant value SomeVariant и даже давал пример мапинга такого описания на потенциальный генерируемый код.
В общем, OCaml — это не чистый ФП. Это гибридный язык, с мутабельностью, ООП и даже unsafe в шаговой доступности, как и Nemerle — тоже гибридный язык.
В общем, я одно время подробно изучал как унутре работают языки из семейства Standard ML и Хаскель — варианты представлены обычными ссылочными типами, над которыми трудится GC.
Ну и, справедливости ради, у тебя не F(T) из исходного утверждения:
Записи — это произведения, суммы — алгебраики.По такой формуле: F(T) = T + 1. Здесь + это сумма типов.
К тому же, ты малость потерял контекст. Следующее в той же ветке моё сообщение:
http://www.rsdn.org/forum/philosophy/6705449.1
более подробно раскрывает мою мысль:
можно использовать ссылочные типы как nullable, а для non-nullable ввести ДРУГОЙ тип.
И там же далее по ветке токается та идея, что для боксированного представления Some и None последний можно представить просто через null. Именно для обоснования такой идеи я напомнил, что в ФП-языках алгебраики почти всегда ссылочные.
В общем, ты вырвал утверждение из контекста.
Оно было не само по себе, а в кач-ве аргумента для описанного решения.
Re[12]: Опциональные типы
Здравствуйте, VladD2, Вы писали:
V>>Не надо меня перевирать:
VD>Помилуй! Никто и не собирался перевирать. Вот твои исходные утверждения:
VD>
Самое смешное тут то, что про ОСaml тебе несколько лет назад говорил именно я, предлагая возможность описывать variant value SomeVariant и даже давал пример мапинга такого описания на потенциальный генерируемый код.
В общем, OCaml — это не чистый ФП. Это гибридный язык, с мутабельностью, ООП и даже unsafe в шаговой доступности, как и Nemerle — тоже гибридный язык.
В общем, я одно время подробно изучал как унутре работают языки из семейства Standard ML и Хаскель — варианты представлены обычными ссылочными типами, над которыми трудится GC.
Ну и, справедливости ради, у тебя не F(T) из исходного утверждения:
К тому же, ты малость потерял контекст. Следующее в той же ветке моё сообщение:
http://www.rsdn.org/forum/philosophy/6705449.1
более подробно раскрывает мою мысль:
можно использовать ссылочные типы как nullable, а для non-nullable ввести ДРУГОЙ тип.
И там же далее по ветке толкается та идея, что для боксированного представления Some и None последний можно представить просто через null. Именно для обоснования такой идеи я напомнил, что в ФП-языках алгебраики почти всегда ссылочные.
В общем, ты вырвал утверждение из контекста.
Оно было не само по себе, а в кач-ве аргумента для описанного решения.
V>>Не надо меня перевирать:
VD>Помилуй! Никто и не собирался перевирать. Вот твои исходные утверждения:
VD>
VD>Я тебе показал используемый на практике ValueOption в функциональном языке, что полностью опровергает твои утверждения.VD>Например, в ФП языках некий Т был value-тип (ну вот так компилятор решил), а после заворачивания F(T) всегда получаем ссылочный тип. Итого, храним лишнюю ссылку вместо значения.
Самое смешное тут то, что про ОСaml тебе несколько лет назад говорил именно я, предлагая возможность описывать variant value SomeVariant и даже давал пример мапинга такого описания на потенциальный генерируемый код.
В общем, OCaml — это не чистый ФП. Это гибридный язык, с мутабельностью, ООП и даже unsafe в шаговой доступности, как и Nemerle — тоже гибридный язык.
В общем, я одно время подробно изучал как унутре работают языки из семейства Standard ML и Хаскель — варианты представлены обычными ссылочными типами, над которыми трудится GC.
Ну и, справедливости ради, у тебя не F(T) из исходного утверждения:
Записи — это произведения, суммы — алгебраики.По такой формуле: F(T) = T + 1. Здесь + это сумма типов.
К тому же, ты малость потерял контекст. Следующее в той же ветке моё сообщение:
http://www.rsdn.org/forum/philosophy/6705449.1
более подробно раскрывает мою мысль:
можно использовать ссылочные типы как nullable, а для non-nullable ввести ДРУГОЙ тип.
И там же далее по ветке толкается та идея, что для боксированного представления Some и None последний можно представить просто через null. Именно для обоснования такой идеи я напомнил, что в ФП-языках алгебраики почти всегда ссылочные.
В общем, ты вырвал утверждение из контекста.
Оно было не само по себе, а в кач-ве аргумента для описанного решения.