Alexey
Ну и ладно, проехали :)
Roman
Cool story = прохладная былина
Студёная былина же. Либо хладный сказ
Roman
Ну коли быть боярином, так да конца
Anonymous
Студёный сказ?
Hog
Можно подумать что Сайм будет :)
Блин, лоханулся в прошлом году :) не подписал ничего:)
Hog
http://minsklingfest.by/start
А почему «белорусистика» через «о» ???
Alexey
Потому что инерция правил русского изыга
Yury
Вот же
Anonymous
Спасибо
Анна
J. A. R. Kotlien
Привет. А есть кто шарит в модулях OCaml и может сказать насколько они мощнее ООП модулей F#? Мне говорили, что типа типизацию модулей OCaml можно почти всю просчитать на этапе компиляции, а в ООП модулях F# там типа динамический диспатчинг в рантайме (.net классы) и поэтому медленнее. Ну и интересно с точки зрения продуктивности при решении задачи, позволяет ли сделать всё то же самое, пусть с небольшим оверхедом F#, что делают на модулях в OCaml.
Ayrat
это просто неймспейсы по сути. С небольшими отличиями.
J. A. R. Kotlien
А если класть в модуль шарпа тип (класс) с конструктором и в него передаём другой тип (класс). Это не похоже?
J. A. R. Kotlien
Хочу понять в чём реальное преимущество этих параметризованных модулей перед фшарповским ооп через type-конструкторы.
J. A. R. Kotlien
Надо, наверное, вот в этот пример вниктнуть. https://stackoverflow.com/questions/36847449/how-to-write-code-in-f-for-what-functors-do-in-ocaml
Ayrat
https://twitter.com/jasonkarns/status/1110985650193477632
Ayrat
Хорошую новость не грех и два раза повторить :D @Kleidemos
Vladislav
это просто неймспейсы по сути. С небольшими отличиями.
Статические классы скорее) Буквально оно так и есть
Ayrat
Статические классы скорее) Буквально оно так и есть
ну статические классы в общем от неймспейсов недалеко ушли
Vladislav
На модули можно typeof :)
Ayrat
А не статические классы случаем?
реализованы они как стат классы. Но юзаются как неймспейсы
Ayrat
потому что
Ayrat
ну статические классы в общем от неймспейсов недалеко ушли
Roman
реализованы они как стат классы. Но юзаются как неймспейсы
Дык а в C# разве нельзя using со статическим классом сделать чтобы функции заимпортировать?)
Ayrat
ну конечно можно)
Ayrat
но это лишь подтверждает что стат класс - эт просто "папочка" для кода
Ayrat
модуль, как по мне, семантически правильно отображает эту мысль, а стат класс - это ооп костыль
Ayrat
это попытка натянуть сову на глобус. - у нас нет глобальных функций, у нас же ООП, кококо - но нам нужны глобальные функции, например синус, что же делать? - давайте запихнём всё в класс Math и будем создавать его каждый раз когда нам нужен синус! - а давайте лучше придумаем класс который не надо создавать каждый раз и у нас будут как бы глобальные функции, но как бы нет, у нас же ооп кококо
Roman
В говне и палках
Hog
Зато тепло и уютно
Igor
Вот как надо public int max(int a, int b) { return new If( new GreaterThan(a, b), a, b ); }
Ayrat
Вот чо ещё бесит в стат классах в C# необходимость везде писать static Ну бля, я ж уже объявил весь класс static, какие там ещё варианты внутри? Конструктор только статичный, другого не будет. Методы туда же, поля, проперти. Но нет, давайте заставим все объявлять со словом static, пусть страдает
Ayrat
Бойлерплейт ради бойлерплейта
Hog
Бойлерплейт ради бойлерплейта
Это врбоуз синтаксис
Ayrat
Это врбоуз синтаксис
В плане? Он вроде не опциональный
Hog
Просто вербоуз
Hog
Многословный
Ayrat
А, понял тебя сейчас
Yury
модуль, как по мне, семантически правильно отображает эту мысль, а стат класс - это ооп костыль
Ну статический класс это по сути неймспейс, так всё на места встаёт
Hog
@Motley_fesst Не грех третий раз повторить!
Нельзя объять необъятное!
Roman
Нельзя объять необъятное!
Только создать несоздаваемое
Anonymous
Нельзя объять необъятное!
зато можно не объять необъятное.
Hog
зато можно не объять необъятное.
А впихнуть невпихуемое?
Anonymous
А впихнуть невпихуемое?
это к javascript'ерам надо
Roman
зато можно не объять необъятное.
Для всего остального есть var vsemogutor = typeof(RuntimeTypeHandle).GetMethod("Allocate", BindingFlags.NonPublic | BindingFlags.Static);
Roman
Anonymous
я такое впервые вижу за всю жизнь
Anonymous
это же не malloc?
Roman
что это за нахуй такой. это законно вообще?
Вот теперь var instanceOfVoid = vsemogutor.Invoke(null, new object[] { typeof(void) });
Anonymous
Anonymous
я вижу вам там сосвсем плохо (
Ayrat
Рефлексия....
Ayrat
Ну в хаскеле тоже ансейф есть для странных кастов и мутаций
Anonymous
как в таком коротком слове помещается столько боли?
Anonymous
Ну за рефлексию тоже.
ну да. поэтому все дефолтные фреймворки на атрибутах кругом-бегом.
Anonymous
особенно бесит валидация на атрибутах
Roman
Ну за рефлексию тоже.
Предлагаешь расстрелять майкрософт за ASP.NET Core MVC?
Anonymous
Предлагаешь расстрелять майкрософт за ASP.NET Core MVC?
пусть живут, их жизнь регулярно наказывает )