Éminence grise
void * - это очень конкретный тип. Указатель на область памяти. Просто указатель. Без информации о том, что там находится.
Éminence grise
В моем понятии, полиморфизм - это скорее о поведении, для реализации которого требуется другое поведение. Но с Анной я согласен в том, что для *OOP*них*OOP* это полиморфизм, но мы то функциональщики 😊
Ayrat
В фп полиморфизм = генерик.
В ооп полиморфизм = что-то сложное про наследование
Igor
А тайп-классы?
Ayrat
Это виртуальные таблицы в ооп
Ayrat
Ну типа таблицы методов для класса
Анна
Éminence grise
Не в ФП полиморфизм - это трейты (ну или не генерилизованные тайп классы)
полиморфизм' - это генерики над трейтами
полиморфизм^n - hkt
Éminence grise
И это никак не виртуальные таблицы. По большому счету вся эта сумасшедшая арифметика - для статического вывода конкретного адреса метода
Éminence grise
И именно из за этого мы в FSharp несколько ограничены. Потому что эмуляция трейтов через интерфейсы не полная. Использование инлайн - ограничено и не удобно. А GADT и HKT не завезли пока совсем. Но все равно лучше чем ООП.
Éminence grise
А нестачиское определение -это результат борьбы за проприентарность библиотек и время компиляции. Потому и TypeScript так заходит при рассмотрении, что можно анализоровать и оптимизировать код, а не бинарник, которому нужен костыль в виде виртуальной таблицы. В готовой программе все типы уже известны. Полностью и всегда- а вот в библиотеке нет.
Nikolay
Ой
Nikolay
Мой доклад сейчас на третьем месте
Pavel
x
Анна
x
придётся докладывать )
Dr. Friedrich
Vladislav
x
Dr. Friedrich
Правда, создать его нетривиально. Многие runtime facilities пытаются этому сопротивляться.
x
ну вот я и хотел пример кода попросить )
x
всё-таки язык это язык, не всё что позволяет дотнет в нём надо делать
Крылатый
Утра!
Крылатый
Dr. Friedrich
А вот если хочется создать экземпляр интерфейса, статик класса или непривязанного генерика, то надо ещё более хитро поступать.
Крылатый
Dr. Friedrich
Крылатый
Простой способ завести второго кота
x
x
x
выше был хороший пример с qsort
Pavel
Pavel
там только упоминание о нем было. пример где?
Pavel
я вот только такие квиксорты видел https://www.geeksforgeeks.org/comparator-function-of-qsort-in-c/
Pavel
он ни в каком месте не полиморфен. ему всегда на вход приежает функция ровно одного вида int (*comparator)(const void*,const void*)
Vasily
Шота @deexpp как-то остро чувствует, что в интернете все неправы
x
да почему ж не полиморфен. Этот алгоритм работает не разбираясь с внутренней сущностью обьекта, она ему не интересна (за исключением отношения между обьектами, которое отдельно задаётся функцией)
x
он написан один раз, и работает для любого типа
Pavel
потому как полиморфная функция работает с разнами типами аргументов. здесь нет разных типов. он 1. см выше
x
x
Анна
Так говорят, потому что так короче
Анна
Анна
ну и потом, скажешь "объектов" - объясняй, что тут имеется в виду не тот "объект", что в ооп, и понеслась... Для зануд непаханое поле :)
x
возможно. Но ведь меняется смысл тогда? в данном случае. То естьговорится "сортировке нужны типы". А они ей не нужны, ей нужны обьекты и отношение между парой этих обьектов.
Анна
x
классный пример в википедии «Я три тарелки съел» )) в контексте разговора о том, допустимо или нет портить посуду, это некорректная метонимия
x
*всё ещё гуглит новое слово*
Vasily
А жизнь мимо проходит и никто не понимает...
x
Анна
Анна
sic
> Sic — латинское слово, означающее «так», «таким образом», «именно так». Употребляется для того, чтобы показать, что предыдущее неправильное или необычное написание является цитатой, а не ошибкой набора.
Точно это хотел сказать? :)
x
именно так.
Анна
Анна
x
Крылатый
Romɑn
🤔🤔
Romɑn
Добрый день Роман.
Меня зовут Эдуард, я являюсь PR-менеджером проекта uWebDesign. Наша аудитория – это молодые дизайнеры и программисты.
Romɑn
наша аудитория в вк 20к человек
Romɑn
Так, и?
Romɑn
в телеграмм канале 1,5к
Romɑn
хотели бы вы приобрести у нас рекламу своего канала или сайта ?
Romɑn
Специфика нашего сообщества в том, что в основном у нас работает только естественный рост. Реклама чата не сможет людей заставить пользоваться языком разработки f#. Если есть доводы против, я бы послушал
Romɑn
ну я не говорил про рекламу чата
Romɑn
Другого в нас нет)
Romɑn
я думал о рекламе вашего канала
Romɑn
в телеграммм
Romɑn
и группе в вк
Romɑn
https://t.me/fsharp_news это же ваш канал?
Romɑn
Там то же самое канал интересен разработчикам f#. И это производное от желания пользоватбся f#, т.е. надо рекламировать не чат или канал, а сам язык.
Romɑn
Да, но читайте выше
Romɑn
Ну, если вы считаете, что продвижение канала не увеличит заинтересованность людей в изучении F#