Ayrat
Не кор
Dr. Friedrich
Хм
Ayrat
Это известная проблема https://stackoverflow.com/questions/52513878/jetbrains-dotmemory-unable-to-import-the-dump-64-bit-dumps-of-32-bit-processes
Ayrat
Снимать дампы 32 битным процессом не вариант
Ayrat
В моём случае
Dr. Friedrich
Содомия какая-то
Ayrat
Да. Очень странное ограничение
Egor
Просто я с GPL не знаком и на сколько я помню там все открытое должно быть
Egor
Поэтому решил спросить у людей поумнее
Viacheslav
Просто я с GPL не знаком и на сколько я помню там все открытое должно быть
Это если ты используешь что-то, что распространяется по GPL, и то, по требованию
Фил Ранжин
гайз, нужен какой-нибудь дельный кейс, где вы очень хотели что-то статически типизировать в F#, но не шмогли
Ayrat
гайз, нужен какой-нибудь дельный кейс, где вы очень хотели что-то статически типизировать в F#, но не шмогли
Ты про случай когда язык не вытаскивает или про случай когда это просто в продакшне ужасно выглядит?
Doge
Сюда же и type families
Фил Ранжин
дуррацкие умные разработчики
Ayrat
Ну в целом, на тайп провайдерах можно даже линейные типы изобразить.
Фил Ранжин
я не понимаю о чем вы
Ayrat
Но это будет пиздец
Doge
Но это будет пиздец
Если бы они могли ADT генерить, то было бы ещё более-менее
Doge
Можно было бы жить
Ayrat
Можно было бы жить
Нельзя так жить!
Ayrat
Мне тут кстати предлагают на скале пописать.
x
давно пора, чо
Фил Ранжин
с дурной компанией связался
x
мне на go предлагают, пока держусь
Ayrat
Надо подумать.
Фил Ранжин
на го писать после F#, это как после Киры найтли на жирухе жениться
x
на го писать после F#, это как после Киры найтли на жирухе жениться
ну они же сделали docker, значит мощь, значит модно
Фил Ранжин
так и го кому-то нравится
Фил Ранжин
Кому-то жирухи нравятся!
а потом, это они просто Киру не пробовали.
Фил Ранжин
на го ж в основном с пыхи мигрируют
Фил Ранжин
ясен хуй он им нравится
Ayrat
Короче, я вот давно хотел в языке настоящие юнион типы, как в тс, но лучше. @fillpackart
Ayrat
А их нет.
Фил Ранжин
я в тс всегда делаю юниона как в F#
Ayrat
Это например string | int тип был подтипом string | int | guid
Фил Ранжин
т.е. не type a = b | c а type a = { caseB: b } | { caseC: c }
Фил Ранжин
Это например string | int тип был подтипом string | int | guid
потому что в статической системе типов тс есть дыры
Ayrat
У нас только размеченные объединения, а надо ещё не размеченные, и чтобы они верно оценивали свои над и подмножества
Фил Ранжин
эти унионы тебя обманут, если будешь юзать мутабельные переменные
Ayrat
Фил Ранжин
Ну эт уже другое. Ты спрашивал чо не хватает
я к чему спрашивал - мы с друганом хорошенько прошарили, как можно с помощью системы типов тпайпскрипта выразить ебанутейшие кейсы
Фил Ранжин
хотим написать об этом, но не можем придумать применения
Ayrat
Линейные типы ещё. Типа как бороу чекер в расте
Ayrat
Но повыше уровнем
Фил Ранжин
это что7
Ayrat
В расте он там для своих целей чекает - чтобы ссылки со стека не утекали и пр
Doge
хотим написать об этом, но не можем придумать применения
Попробуйте сэмулировать зависимую функцию и пару
Ayrat
это что7
Это когда в тип зашита инфа о количестве его возможных использований
Ayrat
Обычно делают 1 и бесконечно. Более сложные системы могут чекать любое значение использований
Фил Ранжин
Ayrat
Например вернул переменную из функции и можешь к ней обратиться ровно раз. Или передать в другую функцию. После первого раза ссылка невалидна в статике
Фил Ранжин
если значения этого типа всегда иммутабельные - есть шанс, что такое можно описать тайпскриптом, но это не точно
Фил Ранжин
@omgszer , иммутабельно - считается?
Ayrat
@omgszer , иммутабельно - считается?
Учитывая что это фишка ФП языков где все иммутабельно, наверное считается)
Фил Ранжин
окей, спасибо. Хороший кейс
Doge
не шарю за термины. Прояснишь?
Зависимая пара - это пара, такая что тип второго элемента зависит от значения первого. Зависимая фукнция - это функция, такая что тип возвращаемого значения зависит от значения аргумента.
Фил Ранжин
мы делали
Фил Ранжин
для тс прям изи
Фил Ранжин
const fn = <T>(a: T, b: <SomeType<T>>)
Doge
const fn = <T>(a: T, b: <SomeType<T>>)
Не-а, не так. Что-то вроде вот этого: const fn = <T>(a: T, b: <SomeType<a>>)
Фил Ранжин
тип б же должен зависеть от типа a
Фил Ранжин
?
Фил Ранжин
т.е. если ты имеешь ввиду всякие отображения, типа там если а - string, то b-number если а - object, то b-bool то это может быть вшито в SomeType
Фил Ранжин
если кто-то из нас что-то не понимает, придумай конкретную задачу на фн, я попробую написать
Doge
тип б же должен зависеть от типа a
Нет, тип б должен зависеть от значения а.
Фил Ранжин
да, в моём примере так и есть. Тебя смущает дженерик
Фил Ранжин
хотя подожди
Фил Ранжин
вроде понял