Size: a a a

Programming Offtop

2020 May 26

AK

Anton Korotkikh in Programming Offtop
Andrew Mikhaylov
Антон, наверное, удивится -- ФПшники языки друг друга динамикодриснёй обзывают 🌚
так нет же, кожура же лисп, а лисп основа всей динаимики, прародитель
источник

AM

Andrew Mikhaylov in Programming Offtop
Anton Korotkikh
так нет же, кожура же лисп, а лисп основа всей динаимики, прародитель
Да, но в таком пренебрежительном тоне, ух
источник

I

Igor in Programming Offtop
Tim Plotnikov
> Было тяжко без линз из lsp
> укажи типы явно и линзы будут не нужны
может мне тогда и на scala начать писать
источник

I

Igor in Programming Offtop
источник

(

( in Programming Offtop
Igor
может мне тогда и на scala начать писать
источник

AM

Andrew Mikhaylov in Programming Offtop
Вот это панч
источник

AK

Anton Korotkikh in Programming Offtop
Igor
может мне тогда и на scala начать писать
зочем у тебя есть илитарный окамель, а ты хочешь кинуться на монструозный сгусток компромисов для тырпрайза и жвм
источник

I

Igor in Programming Offtop
это был сарказм
источник

TP

Tim Plotnikov in Programming Offtop
(
Ну естественно, динамикодрисню-то проще месить, пусть это и динамикодрисня из кложуры
Я какое-то время назад тоже упарывался по всем этим приколам с type-oriented programming. Только вот, как выяснилось, sound у тебя или unsound, багов меньше не становиться.
Ты пишешь код, собираешь пазл из типов и всё равно у тебя выходит потом, что ты либо ни в ту таймзону конвертнул, либо ни те два числа сложил. Исход один - баг.

Конечно, большую кодовую базу на динамическом языке мне сложно представить. Как подумаю о рефакторинге, так сразу кажется что это просто невозможно.
Но стартап я бы никогда не выбрал пилить на окамле. У которого ещё и комунити нет нифига
источник

AK

Anton Korotkikh in Programming Offtop
Tim Plotnikov
Я какое-то время назад тоже упарывался по всем этим приколам с type-oriented programming. Только вот, как выяснилось, sound у тебя или unsound, багов меньше не становиться.
Ты пишешь код, собираешь пазл из типов и всё равно у тебя выходит потом, что ты либо ни в ту таймзону конвертнул, либо ни те два числа сложил. Исход один - баг.

Конечно, большую кодовую базу на динамическом языке мне сложно представить. Как подумаю о рефакторинге, так сразу кажется что это просто невозможно.
Но стартап я бы никогда не выбрал пилить на окамле. У которого ещё и комунити нет нифига
имхо, потому-что никакая система типов не заменит тесты. тут некий баланс, нужно писать код и нужно писать тесты. соотвественно выбрать для себя инструмент в котором удобно писать и сропровождать код и не нужно писать херову тучу тестов. и кранойсти - довольно хуёвые варианты, что очень мудрённая и строгая система типов, которая тебя сильно тормозит, что какая-нибудь (все знают какая) безумная скриптуха, которая даёт быструю разработку и также быстро отрывает тебе ногу
источник

AM

Andrew Mikhaylov in Programming Offtop
Anton Korotkikh
имхо, потому-что никакая система типов не заменит тесты. тут некий баланс, нужно писать код и нужно писать тесты. соотвественно выбрать для себя инструмент в котором удобно писать и сропровождать код и не нужно писать херову тучу тестов. и кранойсти - довольно хуёвые варианты, что очень мудрённая и строгая система типов, которая тебя сильно тормозит, что какая-нибудь (все знают какая) безумная скриптуха, которая даёт быструю разработку и также быстро отрывает тебе ногу
Я не врубаю, кто вообще вам рассказал, что типы должны заменить тесты? Кто из сторонников динамической типизации не начинает аргументы выкладывать, везде это "типы не могут заменить тесты". Они и не должны заменить тесты, они просто целый класс тестов переводят на этап компиляции, в довесок к этому давая возможность инструментировать код и открывая простор для интегрированных сред разработки его автоматизированно переписывать. Всё. Остальные тесты как писали, так и пишут.
источник

AK

Anton Korotkikh in Programming Offtop
Andrew Mikhaylov
Я не врубаю, кто вообще вам рассказал, что типы должны заменить тесты? Кто из сторонников динамической типизации не начинает аргументы выкладывать, везде это "типы не могут заменить тесты". Они и не должны заменить тесты, они просто целый класс тестов переводят на этап компиляции, в довесок к этому давая возможность инструментировать код и открывая простор для интегрированных сред разработки его автоматизированно переписывать. Всё. Остальные тесты как писали, так и пишут.
ну ты же сам ответил.  
 переводят на этап компиляции
сильная типизация действительно замеяняет часть тестов, в случае большого проекта на динамике - это очень большая часть тестов получается
источник

AM

Andrew Mikhaylov in Programming Offtop
Anton Korotkikh
ну ты же сам ответил.  
 переводят на этап компиляции
сильная типизация действительно замеяняет часть тестов, в случае большого проекта на динамике - это очень большая часть тестов получается
Ну так у тебя весь аргумент вокруг того, что система типов не заменит тесты. Да, не заменит, конечно. Это логично. С этим не спорят. :)
источник

AK

Anton Korotkikh in Programming Offtop
Andrew Mikhaylov
Ну так у тебя весь аргумент вокруг того, что система типов не заменит тесты. Да, не заменит, конечно. Это логично. С этим не спорят. :)
нее. у меня про баланс, чем сильнее у тебя типы, тем меньше тестов тебе придётся писать
источник

AM

Andrew Mikhaylov in Programming Offtop
Нет, конечно, какой-нибудь Идрис может спасти от тестов целиком, но на нём и писать соответственно сложно :)
источник

AM

Andrew Mikhaylov in Programming Offtop
Anton Korotkikh
нее. у меня про баланс, чем сильнее у тебя типы, тем меньше тестов тебе придётся писать
Всё так, значит я неправильно посыл понял
источник

I

Igor in Programming Offtop
Кстати там же выложили видосы с реальной разработкой на дин. статических фп языках.
Можно сравнить оба подхода и понять на чьей вы стороне 😉

Clojure https://youtu.be/pmWDMUzu2R0 vs Haskell https://youtu.be/jkySjYYH6Co
источник

AM

Andrew Mikhaylov in Programming Offtop
Igor
Кстати там же выложили видосы с реальной разработкой на дин. статических фп языках.
Можно сравнить оба подхода и понять на чьей вы стороне 😉

Clojure https://youtu.be/pmWDMUzu2R0 vs Haskell https://youtu.be/jkySjYYH6Co
Блин, я хотел посмотреть про собаку, но пока так и не добрался.
источник

TP

Tim Plotnikov in Programming Offtop
Andrew Mikhaylov
Я не врубаю, кто вообще вам рассказал, что типы должны заменить тесты? Кто из сторонников динамической типизации не начинает аргументы выкладывать, везде это "типы не могут заменить тесты". Они и не должны заменить тесты, они просто целый класс тестов переводят на этап компиляции, в довесок к этому давая возможность инструментировать код и открывая простор для интегрированных сред разработки его автоматизированно переписывать. Всё. Остальные тесты как писали, так и пишут.
Я не говорю, что типы не нужны и что их можно заменить тестами.
Я лишь хотел сказать, что у статической проверки типов не так уж много преимуществ перед динамической.
И ты можешь выбрать любой язык, всё равно придётся решить примерно одинаковое количество проблем)

А тот тут есть максималисты, у которых гавно из ушей лезет, чтобы они немного понимали что мир это не чёрное и белое)
источник

I

Igor in Programming Offtop
Igor
Кстати там же выложили видосы с реальной разработкой на дин. статических фп языках.
Можно сравнить оба подхода и понять на чьей вы стороне 😉

Clojure https://youtu.be/pmWDMUzu2R0 vs Haskell https://youtu.be/jkySjYYH6Co
(спойлер: оба пишут в блокнотах без подсветки ошибок 🌚 (только один в репле тестирует, др компилятором (тесты пишут оба)))
источник