
kana
08.09.2018
14:02:51
а к чему это сейчас?

A64m
08.09.2018
14:02:52
поэтому стразу верю - меня убеждать в этом не надо

kana
08.09.2018
14:03:10
люди, которые тоже работают, не помогают конкретно мне решить конкретно мою задачу

Google

kana
08.09.2018
14:03:25
так что пусть они работают, мне нужна не их работа, а их результат

A64m
08.09.2018
14:04:25
вы утверждаете, что вам не важно из-за чего разница, так?
но то что вам это не важно не является доводом в пользу того, что ваше утверждение верно
это так не работает

kana
08.09.2018
14:06:21
то, что кода в этой задаче больше в 3 раза - факт, это не нужно оспаривать вообще

Александр
08.09.2018
14:06:48
Мне кажется, здесь идет восстановление душевного спокойствия после драки в blah. Может, не стоит?

kana
08.09.2018
14:06:57
чтобы этого не было, нужно иметь типизируемую библиотеку, которая решает эту проблему с таким же количеством кода

A64m
08.09.2018
14:07:02
я нигде не спорил с тем, что разница не в три раза, разница между либами на одном языке может быть в 10 раз

kana
08.09.2018
14:07:14
и то, что ее нет в достато популярных источниках, чтобы я ее нашел - тоже факт

A64m
08.09.2018
14:07:19
я спорил с вашей гипотезой о том, почему такая разница

kana
08.09.2018
14:07:55
уууу, я не утверждал, что типы ВСЕГДА будут давать больше кода

Google

A64m
08.09.2018
14:08:07

kana
08.09.2018
14:08:13
я говорю, что сейчас это так и поэтому мне проще решить конкретную задачу без них

Евгений
08.09.2018
14:08:13
А о чём спор вообще?

A64m
08.09.2018
14:08:27
вы утверждали что вот у вас код А в три раза больше кода Б потому что типы

kana
08.09.2018
14:08:40
да

A64m
08.09.2018
14:08:41
я утверждаю, что разница может быть по другим причинам

kana
08.09.2018
14:08:50

Александр
08.09.2018
14:08:52

kana
08.09.2018
14:09:07
я утвердил, что добавление типов увеличивает код в 3 раза

A64m
08.09.2018
14:09:07
просто некоторые люди дизайнят очень вербозные интерфейсы у либ, а некоторые нет

kana
08.09.2018
14:09:21

Imants
08.09.2018
14:09:26

kana
08.09.2018
14:09:28
это оно так и есть

A64m
08.09.2018
14:09:39

kana
08.09.2018
14:09:47
тем не менее, добавление типов все равно увеличивает код в 3 раза

Imants
08.09.2018
14:10:37
.. и это (хорошо, плохо) потому, что...?

Pavel
08.09.2018
14:10:52

Евгений
08.09.2018
14:11:04
Ну просто есть код, который без типов писать в 10 раз больше. Они позволяют не писать код, а запихнуть его в типы просто, которые автовыводятся в 99% случаев

kana
08.09.2018
14:11:25
плохо, потому что бойлерплейт, такой код пишется быстро и очень часто, увеличение количество кода - бутылочное горлышко в трате времени и моей производительности (даже с копированем)

Google

A64m
08.09.2018
14:11:42
да
легко верю, разумеется, языки где требуется аннотация типов везде имеют сомнительную практическую ценность и безтиповые языки делают ненужными другие, где столько аннотаций не нужно

Евгений
08.09.2018
14:12:32
В хаскеле аннотации типов нужны практически нигде

Imants
08.09.2018
14:12:41
типы ведь способствуют тому, чтобы не копировать код?
согласен, что лучше писать так, как самому удобнее.

Pavel
08.09.2018
14:12:55
нет кажись
некопировать код успешно мжно и без типов
они вроде как надежность повышают

Imants
08.09.2018
14:13:39
.. и подстраховываться тестами?

A64m
08.09.2018
14:13:53
(надо заметить, что я считаю что рисерч связанный с языками где аннотации типов обязательны нужен, из-за перспектив вывода кода, но практических результатов там пока немного)

Pavel
08.09.2018
14:14:45
.. и подстраховываться тестами?
по возможности. Система взаимодействует с реальным миром. А система типов всегда исскуственна и полностью ему не соответствует

Евгений
08.09.2018
14:16:03

Pavel
08.09.2018
14:16:29

Евгений
08.09.2018
14:16:33
А миф это реальность, как говорил Лосев

Imants
08.09.2018
14:16:37
компилятор по подсказке от типов находит много несоответствий, которые иначе остались бы на вероятную милость тестов.
как кому удобнее..

A64m
08.09.2018
14:17:03
В хаскеле аннотации типов нужны практически нигде
Только победила культура поехавших на аннотациях, которые их лепят везде.
И в результате нужная нетривиальная аннотация просто тонет в море тривиальных, которыми усиленно засирают код следующие "рекомендуемым практикам"

Pavel
08.09.2018
14:17:03
ну типы они все в области разума, в рантайме вроде как их и нет

Alexander
08.09.2018
14:18:29
верная программа всегда правильно типизирована

Евгений
08.09.2018
14:18:31

Alexander
08.09.2018
14:18:33
дискасс

Pavel
08.09.2018
14:19:29

Alexander
08.09.2018
14:19:30
если вы написали программу на кложе, которая правильно работает, то она вкладывается в конечную систему типов, которую можно было написать с самого начала

Google

Pavel
08.09.2018
14:20:51
возможно, я так глубоко не копал. Есть интерес к хаскелю и языкам с типами, но чтото реально примерения пока не нахожу. Правильнее сказать вакансий мало или проектов

kana
08.09.2018
14:21:08

Alexander
08.09.2018
14:21:23
в общем-то если ты умный, и один работаешь, то можешь не писать
если не повезло или в команде, то лучше написатт
оверхеда не будет

Iva
08.09.2018
14:40:53
Мизерный прирост, а минусов более чем.
есть ситуации, когда меньше церемоний с типами == больше продуктивность, может, поэтому?

Pavel
08.09.2018
14:47:03
я в таких случаях Алана Кея вспоминаю
Если вы используете языки с ранним связыванием, как это делает большинство, то вы запираете себя в рамки того, что уже написали. Переформулировать с легкостью уже не получится.
И потенциал для изменений на ходу и более быстрых итераций:
Одна из ключевых идей: система должна продолжать работу во время тестирования о особенно во время произведения изменений. Даже крупные изменения должны быть поэтапными и занимать не больше доли секунды.
https://habr.com/company/hexlet/blog/303754/

Alexander
08.09.2018
14:48:22
будто у типизации есть какие-то проблемы с этим
факт в том, что ill-typed система не работает правильно
быстро обновлять неправильную системы - такое себе требование

Pavel
08.09.2018
14:49:53

Alexander
08.09.2018
14:50:36
это требование не противоречит типизации никак
вот совсем никак

Pavel
08.09.2018
14:50:49
раньше увлекался и писал на ерлаге. там там его так и несмогли сделать типизированным как раз токи изза проблемы горячего обновления кода
как они пишут. задача оказалась очень сложной

Google

Alexander
08.09.2018
14:51:21
кстати ни одна из фирм с эрлагном не пользовалась горячим обновлением
и многие ругали

Pavel
08.09.2018
14:52:03
где про это можно прочитать, очень интересная информация
насколько мне известно там оно изначально закладывалась при проектирвоании языка и даже вовсю использовалось

Alexander
08.09.2018
14:52:48
но лучше @voidlizard он использовал или тут еще были те кто и сейчас используют спросить
в любом случае статическое ядро + динамическая логика позволяет рантайм обновление
в erlang статическое ядро это RTS (интерпретатор)

Евгений
08.09.2018
14:54:05
Горячее обновление это не та проблема, которая решается на уровне приложения

Alexander
08.09.2018
14:54:20
на уровне приложения ее тоже можно решить
от RTS требование уметь отключать модули когда они уже не используются
приложение должно быть aware of update чтобы по настоящему горячее обновление было возможно
просто инфраструктурой обновление не сделать для произвольной программы
если она не stateless

Евгений
08.09.2018
14:59:10
Ну, стейтфулл приложения это очень особенное явление.
По больше части современные приложения стейтфулл больше от небрежности чем из-за необходимости

Alexander
08.09.2018
15:04:00
не уверен

Imants
08.09.2018
15:10:19

Евгений
08.09.2018
15:10:19
Ну мне сложно придумать юзкейсы стейтфул серверных приложений, которые не сводятся к "мне было лень прикручивать базу"
Базы нужны, но они как раз и есть очень особенное явление

Alexander
08.09.2018
15:11:03

Alexander
08.09.2018
15:11:48
да что угодно где инициализация состояния будет дорогой
хотя если можно делать стейтлесс, то лучше делать стейтлесс

Евгений
08.09.2018
15:19:08