Size: a a a

2018 February 26

λO

λeonid Onokhov in fprog_spb
A64m AL256m qn[cores]
Это мнение Даны Скотта, Харпер его просто популяризирует
Вот даже нескольких экспертов
источник

Aq

A64m AL256m qn[cores] in fprog_spb
Ilia Zviagin
Ещё надо будет от тебя определение что такое "НОРМАЛЬНАЯ ПРОГРАММА" услышать...
более одной строки
источник

AK

Artyom Kazak in fprog_spb
Александр Гранин
Вы серьезно сейчас утверждаете, что статическая типизация вообще не избавляет программиста ни от каких ошибок в сравнении с динамической? Или я ваш тезис ну вовсем не понял, все вот эти цифры: 100500, 100900. Неясно, к каким именно системам они относятся
вот тезис:

> Тезис: с динамической типизацией разработка сложнее, чем со статической.

аргумент в пользу тезиса я понял так: "Если вы не отловили ошибки типов в коде, но они там есть, то код некорректный. Если код некорректный, то неважно, что он запускается — от него нет толку."

я утверждаю, что от некорректного кода есть толк. Код на статических языках в продакшене тоже содержит ошибки, но он полезен

с тем, что код с ошибками вида "runtime error: can't cast String to Int" бесполезен, а код с менее тривиальными / "логическими" ошибками не бесполезен, я очень сильно не согласен

про количество ошибок: я утверждаю, что количество ошибок, которое статическая типизация может отловить по сравнению с динамической, *недостаточно* для того, чтобы можно было говорить, что, например, пока вы не натравили нормальный тайпчекер на свой код, он якобы настолько багованный, что его можно reasonably считать бесполезным. С тем, что статическая типизация ловит больше ошибок, чем динамическая, я не спорю

т.е. нифига не очевидно, что преимущество "быстрее получается код, который можно запустить" нивелируется тем, что надо его дольше дебажить

потому что не все ошибки, которые *может* словить тайпчекер, вообще *необходимо* ловить для того, чтобы код стал считаться полезным
источник

Y

Yuuri in fprog_spb
PL/SQL - скриптовый язык, на котором нельзя писать скрипты, бывают и такие.
источник

IZ

Ilia Zviagin in fprog_spb
A64m AL256m qn[cores]
более одной строки
Ну, тогда как же быть с тоннами кода, написанного на PHP например?
источник

IZ

Ilia Zviagin in fprog_spb
Yuuri
PL/SQL - скриптовый язык, на котором нельзя писать скрипты, бывают и такие.
КРУТО!
источник

Aq

A64m AL256m qn[cores] in fprog_spb
Ilia Zviagin
Ну, тогда как же быть с тоннами кода, написанного на PHP например?
страдать над этим кодом, что же еще?
источник

λO

λeonid Onokhov in fprog_spb
Любой не тривиальный набор тестов для программы на динамически типизированном ЯП содержит половину неформального, забагованного и кривого тайпчекера.
источник

IZ

Ilia Zviagin in fprog_spb
Парни, давайте дальше, вам надо просто составить полную окончательную картину мира, оформить всё аккуратно...
источник

Y

Yuuri in fprog_spb
Ну вот яростно троллит же человек, а мы ведёмся...
источник

IZ

Ilia Zviagin in fprog_spb
A64m AL256m qn[cores]
страдать над этим кодом, что же еще?
Но это по твоему опредеелению нормальная программа. На скриптовом языке. Которую вроде как написать нельзя.
источник

Aq

A64m AL256m qn[cores] in fprog_spb
Ilia Zviagin
Но это по твоему опредеелению нормальная программа. На скриптовом языке. Которую вроде как написать нельзя.
ну да, и опыт написания таких программ и подтверждает, что скриптовые языки для написания нормальных программ не годятся
источник

VM

Vyacheslav Mikushev in fprog_spb
Кстати, получается, что ассемблер тоже скриптовый язык. Там ведь нет типов.
источник

IZ

Ilia Zviagin in fprog_spb
A64m AL256m qn[cores]
ну да, и опыт написания таких программ и подтверждает, что скриптовые языки для написания нормальных программ не годятся
Т.е. языки не годятся, но всё же такие программы на них пишут, так?
источник

Y

Yuuri in fprog_spb
Vyacheslav Mikushev
Кстати, получается, что ассемблер тоже скриптовый язык. Там ведь нет типов.
А должен быть один ;)
источник

Aq

A64m AL256m qn[cores] in fprog_spb
Ilia Zviagin
Т.е. языки не годятся, но всё же такие программы на них пишут, так?
НЕВЕРОЯТНО, некоторые люди оказывается делают то, что лучше не делать.
источник

VM

Vyacheslav Mikushev in fprog_spb
A64m AL256m qn[cores]
языки без типов/с одним типом
Или без типов.:)
источник

Y

Yuuri in fprog_spb
А, сорян
источник

IZ

Ilia Zviagin in fprog_spb
Vyacheslav Mikushev
Кстати, получается, что ассемблер тоже скриптовый язык. Там ведь нет типов.
ТАм и есть один тип. БАЙТЫ В ПАМЯТИ!
источник

VM

Vyacheslav Mikushev in fprog_spb
Бестиповые языки, в противоположность типизированным, позволяют осуществлять любую операцию над любыми данными, которые в них представляются цепочками бит произвольной длины[4]. Бестиповыми является большинство языков ассемблера. Примерами высокоуровневых бестиповых языков служат BCPL, BLISS[en], Forth, Рефал.
источник