@scala_ru

Страница 809 из 1499
Oleg
08.07.2017
21:03:14
расскажи мне, как связаны типы A и B, каким образом они изоморфны

и прими аксиому унивалентности всем сердцем

потом мы это легко свяжем в доказательный код

Oleksandr
08.07.2017
21:03:56
сделай sealed trait определи все варианты
гм, ну пусть будет sealed trait A trait B extends A trait C extends A def foo(b: B): C = ???

Google
Oleg
08.07.2017
21:03:57
а asInstanceOf - это неполная функция

она ничего не доказывает

гм, ну пусть будет sealed trait A trait B extends A trait C extends A def foo(b: B): C = ???
ты совсем не понимаешь, что такое замкнутое семейство, да?

Oleksandr
08.07.2017
21:04:38
она ничего не доказывает
ну как же на уровне тех же имплиситов доказывает оно свалится в рантайме, но проверку пройдет

Oleg
08.07.2017
21:05:09
ну как же на уровне тех же имплиситов доказывает оно свалится в рантайме, но проверку пройдет
если она может свалится в рантайме, это значит, что твоё доказательство - мусор

Oleksandr
08.07.2017
21:05:11
ты совсем не понимаешь, что такое замкнутое семейство, да?
не хочу гуглить сейчас напиши тогда сниппет)

Oleg
08.07.2017
21:05:33
не хочу гуглить сейчас напиши тогда сниппет)
сниппет чего? доказательства изоморфности типов в твоей голове?

извини, забыл майнд-контроллер в другом телеграмме

Oleksandr
08.07.2017
21:07:18
если она может свалится в рантайме, это значит, что твоё доказательство - мусор
очень строгое утверждение может быть, это у меня хак типа тех, что rudogma использует для правки мозгов идее, но _случайно_ провытал какую-то ветку — код будет компилироваться и даже иногда работать

Oleg
08.07.2017
21:07:28
т.е. утверждение, что паттерн матчинг плохой способ доказывать утверждения, которые, в общем неверны действительно верно. Так же как и любой способ доказывать такие утверждения

очень строгое утверждение может быть, это у меня хак типа тех, что rudogma использует для правки мозгов идее, но _случайно_ провытал какую-то ветку — код будет компилироваться и даже иногда работать
Сабин и все остальные используют asInstanceOf не как доказательную базу, а как вправление мозгов скаловскому компилятору, система типов которого пока слабовата

Oleksandr
08.07.2017
21:08:33
сниппет чего? доказательства изоморфности типов в твоей голове?
в котором патматом доказыватся сводимость несводимых типов

Oleg
08.07.2017
21:09:30
в котором патматом доказыватся сводимость несводимых типов
Я перестаю тебя понимать. Твоё утверждение о паттерн-матчинге касалось какого-то конкретного случая, в котором доказывалось то, что вообще говоря неверно?

Google
Oleksandr
08.07.2017
21:09:37
всегда считал, что именно по причине "универсального доказательства" null является жестким надругательством над системой типов (а каст из той же оперы, как я понимаю)

Oleg
08.07.2017
21:09:52
Я говорю, что паттерн-матчинг - подходящий способ доказывать утверждения, не хуже чем любой другой

А ты, видимо, что-то другое...

Oleksandr
08.07.2017
21:10:25
ну я про то, что "сигнатура функции — теорема, а её реализация — доказательство"

я здесь прицепился к слову "универсальное" :)

Oleg
08.07.2017
21:10:49
Oleksandr
08.07.2017
21:11:02
патмат не является универсальным доказательстом чего угодно (в смысле, на уровне типов) и вообще там куча проверок "на дурака" в виде isInstanceOf

Oleg
08.07.2017
21:11:07
А вот для доказательства эквивалетности неэквивалентных типов - не очень хорошо

Как и что угодно другое

Oleksandr
08.07.2017
21:11:24
то, что патматом можно доказывать, я не спорю)

Oleksandr
08.07.2017
21:12:42
эм. я не использую хаки без доказательств) оно у меня не может свалится в рантайме)
ну я для примера :) вдруг кто-то другой попробует так же, но не все ветки докажет

Oleg
08.07.2017
21:12:45
Ок. я сагрился на спор, в котором мне нет места, я застёгиваю кобуру и ухожу

Oleksandr
08.07.2017
21:14:12
та просто недоопределенные понятия спора — о разном говорили самая популярная причина для неконструктивных дискуссий)

Denis
09.07.2017
01:31:02
https://twitter.com/contrarivariant/status/883805540203102208

Alexey
09.07.2017
05:55:42
тем более что она впринципе права)

Nick
09.07.2017
08:48:46
открываешь https://github.com/JetBrains/intellij-scala и фиксишь

Google
Alexey
09.07.2017
08:50:28
Кул стори

Roman
09.07.2017
08:50:43
Я как-то один раз открыл, с тех пор заикаюсь

Alexey
09.07.2017
08:51:03
Тут как бы идея то права

Она просит А а я ей пихаю какую то фигню

Nick
09.07.2017
08:51:32
с чего она права то

Option... не может быть A ?

Alexey
09.07.2017
08:52:20
Там в каждом кейсе свой возвращаемый тип

То что дженерик стирается собственно и даёт этому компилиться как я понимаю

Nick
09.07.2017
08:53:48
покажи целиком

Alexey
09.07.2017
08:54:05
Щас нет кода под рукой

Mikhail
09.07.2017
08:55:45
То что дженерик стирается собственно и даёт этому компилиться как я понимаю
опачки. это как так. сначало же проверка типов идет) ты же не хочешь сказать, что тайп еражуре позволит скомпилиться такому коду val list:List[String] = List(1,2,3,4) )

Alexey
09.07.2017
08:56:50
Нуууу нет, не могу придумать логичного объяснения этому)

Mikhail
09.07.2017
08:57:52
чему тайп еражуре способствует, так это компиляции вот такого val list2:List[String] = List(1,2,3).asInstanceOf[List[String]] и оно в рантайме не упадет

val list3:Set[String] = List(1,2,3).asInstanceOf[Set[String]] - а вот это упадет в рантайме, потому что топлевел тип не совпадает) List != Set

Nick
09.07.2017
09:01:57
ппц все в скала плагине упорядочено через одно место)

Mikhail
09.07.2017
09:03:12
ппц все в скала плагине упорядочено через одно место)
как будто жетбрейнсы когда-то отличались ох**тельной архитектурой и изяществом)

Nick
09.07.2017
09:04:11
да я в шоке

проще взять и написать свои скала плагин)

Alexander
09.07.2017
09:04:29
точно, то ли дело эклипс!

Nick
09.07.2017
09:12:06
мне интересно, насколько реально скала мета заюзать для скала плагина

Google
Nikolay
09.07.2017
09:13:10
Было пару дней назад в твиттере

Mikhail
09.07.2017
09:13:15
Nick
09.07.2017
09:13:32
частично

Nick
09.07.2017
09:13:39
а я про выкинуть нахер все из идеи)

Mikhail
09.07.2017
09:13:42
https://github.com/JetBrains/intellij-scala/tree/idea172.x/src

Nick
09.07.2017
09:13:57
ха

Admin
ERROR: S client not available

Nick
09.07.2017
09:14:14
https://github.com/raulraja

коммитил)

Юрий
09.07.2017
09:15:26
можно
Но ведь у компилятора своё апи, а у меты своё

Nick
09.07.2017
09:15:40
Юрий
09.07.2017
09:17:05
Ну так об этом и речь

Mikhail
09.07.2017
09:17:19
Но ведь у компилятора своё апи, а у меты своё
это же не важно. главное на выходе аст какое-то иметь, которое можно для индексов использовать

а важно то, что скаламета - не выводит типы

Юрий
09.07.2017
09:18:01
Scala macros будет выводить

Nick
09.07.2017
09:20:00
идее и не нужен вывод типов, у них свои механизм

хотя я хз, я ток смотрю этот код

решил собрать idea плагин, все повисло)

Google
Nick
09.07.2017
09:37:04
слава jb!

Mikhail
09.07.2017
09:39:06
решил собрать idea плагин, все повисло)
не ты первый, не ты последний)

Kirill
09.07.2017
10:39:27
вы так плюётесь, ну не пользуйтесь тогда )

A
09.07.2017
10:42:57
Да, атом всё умеет

Конечно шутка

Здесь все такие шутники

Надорвёшь живот

Mikhail
09.07.2017
11:02:37
вы так плюётесь, ну не пользуйтесь тогда )
ну ты скажешь. если так рассуждать - придется и от семок отказаться)

Kirill
09.07.2017
11:03:07
ну ты скажешь. если так рассуждать - придется и от семок отказаться)
ну оно опен-сорс, платить за это не заставляют, не нравится - можно зайти улучшить

Mikhail
09.07.2017
11:03:28
Kirill сегодня от семок отказаться, а завтра с кортов встать? ну уж нет)

Nick
09.07.2017
11:05:34
Kirill иди попробуй улучшить, ага

Kirill
09.07.2017
11:06:04
в смысле? для вас сделали бесплатно с открытым исходным кодом, вы ноете

Mikhail
09.07.2017
11:06:07
ну оно опен-сорс, платить за это не заставляют, не нравится - можно зайти улучшить
опенсорс не обязывает быть всегда политкорректным и в попец дуть, лишь бы разработчику чсв поднять) неполиткорректность не указывает на неуважение к разработчику и к его труду)

Kirill
09.07.2017
11:08:28
ну так не пользуйся, раз наговнокодили

Nick
09.07.2017
11:08:44
да я итак в виме пишу)

Mikhail
09.07.2017
11:12:15
ну так не пользуйся, раз наговнокодили
не нравится критика - не читай)

Kirill
09.07.2017
11:13:09
я и не автор чтобы не читать критику, критика-то здравая, есть за что, просто такая безапеляционность в отношении oss удивляет

Nick
09.07.2017
11:54:27
запустил fast tests - уже полтора часа жду)

Страница 809 из 1499