Vladislav
Что-то я все равно не пойму, Снойман - он хороший или плохой?
Он хороший, потому что консистентен в своей позиции, объясняет хорошо, вникает в проблему, т.е. консалтит грамотно Но он плохой, потому что если его много слушать, то можно из Haskell сделать функциональный Go, в том смысле, что новые фичи отторгаются в пользу проверенно работающих, даже если их видно не хватает для задачи
Алексей
тело запроса у гет может быть
Мне вот что-то кажется, что если даже стандарт особо не запрещает тело у get, то всё равно наверняка не все веб сервера будут такое поддерживать. И не все клиенты.
Alexander
Снойман Шредингера
Vladislav
в смысле?
kosc
вообще?
Вообще
Vladislav
типа хороший и плохой одновременно?
Vladislav
нельзя же так людей делить
Alexander
Он не обидится :)
Vladislav
я вот пожаловался, например, на Alexander Vieth из Well-Typed, который консалтит не пойми как и в коде страшные вещи наворотил, но в то же время не буду отрицать, что он умный, крутые вещи время от времени придумывает (вроде https://github.com/avieth/type-lambda), и в GHC полезные contributions делает, и т.д.
Vladislav
хороший он или плохой?
Vladislav
Он не обидится :)
я просто не считаю, что можно охарактеризовать человека одной булевой переменной ну то есть можно, но такая характеристика будет совершенно бесполезной, скорее вредной
Алексей ayaye :)
я просто не считаю, что можно охарактеризовать человека одной булевой переменной ну то есть можно, но такая характеристика будет совершенно бесполезной, скорее вредной
я вот прочитал это и живо представил себе, как происходит каррирование человеков! мне этот ваш хаскель весь мозг сломал 😂
Alexander
Вот с хаскеллистами всегда так. Как что-нибудь придумывать, так они впереди планеты всей, ворочают вещами, уровень абстракции которых не поддается описанию. А как на в продакшене, так сразу какую-то ерунду пишут неподдерживаемую
Vladislav
изоморфно
Leonid 🦇
можно добавить еще конструкторов
Vladislav
Null
Vladislav
для практичности
Dmitry
WorkButSmells
Dmitrii
Вот с хаскеллистами всегда так. Как что-нибудь придумывать, так они впереди планеты всей, ворочают вещами, уровень абстракции которых не поддается описанию. А как на в продакшене, так сразу какую-то ерунду пишут неподдерживаемую
Думаю, что специфика языка влияет. Он позволяет сделать слишком много, и люди берутся за разное, экспериментируют. Поддерживаемый код в продакшене писать не так сложно, там обычный опыт программирования применим. Просто Haskell не так популярен, хорошие подходы не так сильно распространены, пока ещё слишком много разных способов написать что-то, и не всегда понятно, какой лучше.
Алексей
Good | Ungood | Doubpleplusungood
Alexander
WorkButSmells
WorkButtSmells
Leonid 🦇
Good | Ungood | Doubpleplusungood
UNACCEPTABLE CONDITION https://www.youtube.com/watch?v=Oqa9tKarkNA
Alexander
АЛГЕБРАИЧНО!
Vladislav
WorkButtSmells
улётная шутка
саша
Он хороший, потому что консистентен в своей позиции, объясняет хорошо, вникает в проблему, т.е. консалтит грамотно Но он плохой, потому что если его много слушать, то можно из Haskell сделать функциональный Go, в том смысле, что новые фичи отторгаются в пользу проверенно работающих, даже если их видно не хватает для задачи
Проблема в том, что нужно как-то сохранять ограниченное количество активно используемых фич. То есть если вводится какая-то новая суперважная всем нужная фича, то какую-то старую по хорошему бы задепрекейтить. Иначе будет разрастаться контекст, а кривая обучения будет становиться всё круче.
Alexander
😊
саша
Либо нужно будет навернуть абстракцию над старыми фичами, чтобы от новоприбывших их можно было эффективно скрыть.
Vladislav
я думаю проблема скорее в том, что у новых фич есть двадцать способов, как всё может пойти не так, и никто не знает, как именно, чтобы избежать
Timofey
DnD же! data Law = Chaotic | Neutral | Lawful data Align = Good | Neutral | Evil type Descr = (Law, Align)
Vladislav
поэтому если нужно сделать продукт, то все новые фичи (и библиотеки) должны быть под вопросом, даже ценой бойлерплейта, некрасивых решений, и т.д., если сохраняется важное свойство: предсказуемость
Vladislav
DnD же! data Law = Chaotic | Neutral | Lawful data Align = Good | Neutral | Evil type Descr = (Law, Align)
Ну да, потому что люди ведут себя одинаково во всех ситуациях.
Timofey
чОрд! data Align = Good | NeutralA | Evil ; data Law = Chaotic | NeutralL | Lawful
Cheese
Ну да, потому что люди ведут себя одинаково во всех ситуациях.
Lawful ведут себя одинаково, Chaotic по-разному. это тоже предусмотрено
Vladislav
по-моему одинаковое и lawful поведение это разные вещи
Vladislav
или под law подразумеваются не обязательно социально установленные нормы или закон, а просто следование личным принципам?
Leonid 🦇
Под lawful подразумевается противополжность chaotic
Vladislav
а под chaotic противоположность lawful
Leonid 🦇
ну chaotic же сразу ясно что
Vladislav
нет
Vladislav
ничего не ясно
Vladislav
это еще хуже, чем 16 personality types
Leonid 🦇
ну это же лишь guildelines for roleplaying а не правила
Leonid 🦇
https://en.wikipedia.org/wiki/Alignment_(Dungeons_%26_Dragons)#Law_vs._chaos и вообще это в blah
Cheese
или под law подразумеваются не обязательно социально установленные нормы или закон, а просто следование личным принципам?
да, следование установленным нормам — это good, а lawful — следование собственным нормам, предсказуемость
Cheese
ну это же лишь guildelines for roleplaying а не правила
кодекс пиратов — это рекомендации, а не закон
Leonid 🦇
только good это не "установленным нормам", а христианским таким
Leonid 🦇
а то я помню срачи на тему "ну я good хоть и расист, потому что я делаю good для свой расы"
Leonid 🦇
Эльфы расисты
Vladislav
Эльфы расисты
тогда священная война это не good?
Leonid 🦇
а есть QQ для многострочного Text?
Bogdan
уважаемые мэйнтейнеры katip, а не могли бы пояснить отсутствие последнего в stackage?
Leonid 🦇
можно без интерполяции
Aleksey
Illegal type variable name: ‘TypeName’
Aleksey
а на такое кто нибудь натыкался уже?
Cheese
а есть QQ для многострочного Text?
interpolate:Data.String.Interpolate.IsString.i
Aleksey
проприетарщина
Aleksey
щас анонимирую
Cheese
Illegal type variable name: ‘TypeName’
опечатка? может, там какой-то невидимый символ затесался? или одна из букв не буква, а буквоподобный символ?
Cheese
Illegal type variable name: ‘TypeName’
а переменные разве не с маленькой?
Aleksey
Дак это и не переменная, а тип
Aleksey
щас
Cheese
переменная уровня типов, как я понимаю
Cheese
или в этом месте ожидается только переменная
Aleksey
переменная уровня типов, как я понимаю
https://gist.github.com/s9gf4ult/f75b77a92cbc1677887a0547bf564e4e
Aleksey
вот код
Aleksey
в упор не вижу что не так
Aleksey
короче щас нормально поправлю
Cheese
Cheese
то есть компиляция доходит до ненахождения E.HasLens
Cheese
у тебя ошибка в B?