Denis
A64m
сигнатуры пишут в 95% из-за убогости хаскельного тулинга и в 5% в случае всяких продвинутых тайплевельных фокусов
Denis
сигнатуры помогают не при написании кода, а при возвращении к нему
A64m
ну я и говорю, из-за убогости хаскельного тулинга
Denis
с монохаскеллем могли бы выводиться сами, но зачем так жить
A64m
потому что почти всегда они восстанавливаются из кода "машинным" способом
Denis
не согласен с “почти всегда”
Viacheslav
Вообще у вас тут первое апреля что ли продолжается?
Leonid 🦇
A64m
я не шучу только первого апреля
Denis
A64m
но тут я почти серьезен
Leonid 🦇
Ну так у тебя и хаскель для развлекухи
Denis
а что там было про 5KLOC?
Denis
тоже для развлекухи?
A64m
к сожалению для страдания Ж(((
Denis
хуяк хуяк и в страдание
A64m
да
Denis
чем меньше хаскель похож на окамл и чем больше похож на агду, тем меньше шансов, что сигнатуры можно не писать
Denis
а он явно в этом направлении идет
Denis
вывод неразрешимее и неразрешимее
A64m
идет, конечно, но не особо далеко ушел пока
Denis
с точки зрения вывода типов уже все довольно спорно
A64m
ну и аннотаций типов для разрешимости нужно меньше чем принято писать сейчас, за счет всяких частичных сигнатур и применений типов
Denis
пойду кстати хоткей попробую, который выше советовали
Leonid 🦇
дефолтное всё
Denis
C-h k C-u-c-t
Denis
что говорит?
Andrey
Leonid 🦇
ну это же C-u + C-c C-t
Leonid 🦇
C-c C-t runs the command haskell-process-do-type (found in
interactive-haskell-mode-map)
Andrey
мне кажется, больше не от языка зависит, если честно
В какой то момент начинает хотеться провести границы, иначе сложно думать о системе. "Непонятные ошибки типов в непонятных в местах" это как симптом больше, а не причина.
Andrey
A64m
ну сейчас обсуждаются сигнатуры в хаскеле именно как "автоматически генерируемая документация, которую почему-то пишут вручную"
у сигнатур для модулей в хаскеле, понятно, такой же смысл как в окамле, но их сейчас полтора человека пишет
Andrey
все, сорри, влез по ключевому слову ocaml 🙂 ухожу
Алексей
Не знаю как вы, а я часто код начинаю писать как раз с сигнатур
Denis
IC
Типы писать надо. А вот код пусть сам выводится.😜
Алексей
Просто undefined
Denis
в хаскель justDoIt завезли вон
Alexander
Denis
производная от лайка?
Leonid 🦇
+'
A64m
Ну, "пишем типы - код выводится" существует больше в программных выступлениях МакБрайда, хотя не совсем, кое-где как-то работает, а вот типы из кода действительно нормально выводятся.
Denis
У макбрайда где выводится - все довольно алгебраично. Так продакшены не пишутся, практики говорят что это недружелюбно и элитизм.
A64m
но справедливости ради, надо заметить. что есть вполне практические случаи, когда выводится.
просто это не пробольшую часть кода, а вот вывод типов как раз про большую
A64m
т.е. сигнатуры полезны, но не надо забывать что большая часть всех этих рассуждений об их полезности были выработаны для обоснования того, что вывода типов нет. Там где вывод типов есть, возможны другие решения, под которые можно подводить другие обоснования.
Алексей
Если код выводится специально обученным программистом - отлично работает
A64m
есть обоснования от страдальцев с допотопными языками, есть обоснования от тех кто делает/использует ЯП от пруфассистентов происходящие, но не надо забывать что и тем и другим с этой подводной лодки никуда не деться, выбора у них нет вовсе, можно только обосновывать, почему его нет
Dmitry
A64m
ох, да любое его выступление
Dmitry
Ага
Aliester
Aliester
вы думаете, что их можно профпереориентировать?
IC
А нужно?
Алексей
Можно ли писать яву на сабже?
parket
Нужен DSL для управления джавистами.
Denis
язык+VM или чтобы как java-код выглядело?
Cheese
Denis
Denis
Denis
шах и мат
Kirill
Нужна inline-jira
Cheese
я как раз работаю над чем-то таким
Denis
чтобы можно было джавистами из хаскеля управлять?
Leonid 🦇
inline-bugaenko
Alexander
а у него есть C APi?
Leonid 🦇
Только через jni
Denis
Внезапное: А sabbatical вообще реально брать в нашей индустрии? Мне иногда так надоедает это всё что хочется на год в горах жить, дрова колоть, музыку играть или что-нибудь такое, подальше от монитора.
Leonid 🦇
Если не на js пишешь то можно
Denis
думаешь все фреймворки устареют?
Leonid 🦇
Думаю да
Alexander
можешь в Сохатского превратиться