Leonid 🦇
Dmitry если ТК осилил, то такой код читать не сложно
Alexander
я до дома дойду через минуту посмотрю
Leonid 🦇
Вообще без ТК хаскель в продакшен тянуть не стоит
Alexander
о кстати
Dmitry
теоркат, чтоли?
Leonid 🦇
да
Alexander
у нас есть проект большой на 60к кода
Dmitry
я бы не сказал, что это хороший аргумент в пользу читабелности хаскель-кода
Alexander
который достался людям без опыта haskell
Dmitry
потому что ради каких-то мелочей нужно поднимать нехилый раздел математики
Alexander
они нормально его читают
Dmitry
Александр: ну и что? что это доказывает, кроме того, что ваши программисты смогли прочитать вот этот вот проект?
Dmitry
я говорю о том, что когнитивная нагрузка на мозг хаскель-программиста повыше, чем жависта того же
Vasiliy
чтобы читать код на жаве, нужно не меньше упороться по ооп
Leonid 🦇
ну так у нас и мозг покрепче
Anonymous
... что способствует фильтрации по интеллекту
Dmitry
Вообще я хочу сказать, что подписываться быть адвокатом какого то ЯП совершенно бессмысленно
Dmitry
Vasiliy: ооп того две странички, сравнил с теоркатом, да!
Vasiliy
две странички - это у кэя?
Anonymous
И троллить в тредах без какой-то конструктивной цели - тоже.
Leonid 🦇
Dmitry объясни мне AbstractSignletonProxyFactoryFactory паттерн
Dmitry
У Корделли
Dmitry
ну а сколько там надо, чтоб основные принципы объяснить?
Vasiliy
ТК тогда в три строки укладывается
Dmitry
не, погодь, не корделли
Dmitry
мне не надо читать талмуд Корделли, чтобы нормально писать на яве
Dmitry
а вот Леонид сказал, что я должен теоркат выучить, чтоб нормально писать на х-е
Dmitry
Мне вообще не надо ничего читать, что бы писать на х-ле
Dmitry
Хотя книга Марлоу хороша
Alexander
Александр: ну и что? что это доказывает, кроме того, что ваши программисты смогли прочитать вот этот вот проект?
ну даже нетривиальный код оказывается читаем и поддерживаем, что удивительно
Dmitry
Леонид стебетсч
Anonymous
Dmitry , чего вы хотите добиться-то? @voidlizard , что за книга?
Leonid 🦇
без книги Марлоу импорт Control.Concurrent должен удалять сорцы
Dmitry
Параллельное и конкурентное программирование
Dmitry
Александр, я не сказал, что х-ль код нельзя прочитать. Я сказал, что аналогичный код на яве читается просто легче
Vasiliy
смари, есть объекты, есть стрелки, из любого объекта A есть стрелка, которая возвращается в него же, а если есть стрелка f между объектами A и B и есть стрелка g между B и C, то есть и стрелка (g.f) между A и C
Alexander
опыт.. опыт.. опыт
Leonid 🦇
Аналогичного кода на яве просто быть не может
Dmitry
kir - добиваю скуку
Alexander
это не минус чего-то
Alexander
если взять человека с улицы среднего
Alexander
то наверное код на java он прочитает немного быстрее
Alexander
до какой-то ширины проекта
Anonymous
Да он устанет его читать
Dmitry
если взять двух программистов примерно равной подготовки, то жавист будет более продуктивен просто в силу меньшего объема необходимых знаний
Vasiliy
https://pastebin.com/EhXR9Scd
Dmitry
php-шник будет писать код ещё быстрее, кстати
Vasiliy
быстрее всех будет писать перловик
Misha
Александр, я не сказал, что х-ль код нельзя прочитать. Я сказал, что аналогичный код на яве читается просто легче
Читается легче, понимается не обязательно легче. Но вообще от опыта зависит гораздо больше. Китайцы вот прекрасно читают на китайском и ничего.
Vasiliy
он может просто головой об клавиатуру удариться, что-то да получится
Anonymous
Быстрее всех будет писать программист на J
Dmitry
Быстрее всех код писать будет генератор кода
Leonid 🦇
Vasiliy а аннотация для Proxy в (fs Proxy xs) не нужна?
Anonymous
Programming on J by facerolling on special symbol section on your keyboard.
Alexander
Vasiliy тут лучше подход как в vynil но давай попробую сделать так
Vasiliy
Vasiliy а аннотация для Proxy в (fs Proxy xs) не нужна?
вот мне чтоб тип Proxy указать надо как-то разбить тип у входящего Proxy
Vasiliy
я же не знаю, ts у нас '[] или что-то ещё
Alexander
а зачем там прокся вообще?
Leonid 🦇
Vasiliy компилятор тоже не знает
Vasiliy
без прокси он говорит Couldn't match type ‘Map M ts0’ with ‘Map M ts’
Vasiliy
он думает, что это два разных ts
Leonid 🦇
надо через класс с 2мя инстансами (x ': xs) и '[]
Dmitry
Парни, вот вы тут пытаетесь уговорить компилятор сделать что-то довольно простое, судя по всему. Как получилось, что 5 минут до этого все убеждали меня, что кодяра на х-е легко читается?
Alexander
как в vinyl сильно проще
Alexander
где у нас: data HL (f::* -> *) [xs] where C :: f x -> HL f xs -> HL (x:xs)
Leonid 🦇
язабан, нельзя так толсто
Vasiliy
гм...
Alexander
Dmitry как в clojure сообществе принято обращаться с людьми которые не поняли кусок диалога непоняли и начали троллить?
Dmitry
ладно, проехали
Alexander
я серьезно
Alexander
почему а. простое, встречается ли такой код в рабочем проекте и как часто
Alexander
или в clojure не возникает вопросов, а вот я хочу сделать такое хитрое инетересно получится ли у меня
Alexander
с макросами или что там есть нетривиальное
Dmitry
В кложуре вопросы совсем другого плана. Они не касаются синтаксиса языка
Alexander
тут вопросов про синтаксис не было
Dmitry
там кстати с синтаксисом вообще порядок: его почти нет
Vasiliy
конечно, ведь там нет синтаксиса
Dmitry
ну здесь про систему типов, которую никак не удаётся уломать сделать то, что нужно
Dmitry
или я не так понял?