
Leonid
20.09.2017
15:15:29
Dmitry я без типов не пишу, спасибо

Alexander
20.09.2017
15:15:36
я вроде спрашивал ваш опыт про хаскель чтобы вы осторожнее на него ссылались
в разговорах про удобство рефакторинга

Anatolii
20.09.2017
15:15:53
@lonokhov просто на одном месте работает долго наверное :)

Google

Dmitry
20.09.2017
15:16:10
Александр: я из опыта вывел проблемы, но их не опровергают, а только пишут, что я не прав, потому что по их опыту этих проблем нет
ну блин

Dmitry
20.09.2017
15:16:19
Какие то неконкретные наезды

Alexander
20.09.2017
15:16:22
кстати дарю defer-type-errors тому кому надо компилять при рефакторинге

Dmitry
20.09.2017
15:16:40
Нечитабельность не считается, это вкусовщина

Leonid
20.09.2017
15:17:07
кому и ats читабелен

Alexander
20.09.2017
15:17:08
Дмитрий если вы говорите что из вашего опыта есть проблемы, а другие говорят что у них этой проблемы нет, что это может значить?
а. другие не замечают бревно

Dmitry
20.09.2017
15:17:44
Alexander: я привел конкретные вещи, легко проверяемые. Я предлагаю их опровергнуть, а не ссылаться на опыт

Alexander
20.09.2017
15:17:48
б. другие не видели ничего лучше

Dmitry
20.09.2017
15:18:07
да, именно а. Haskell — настолько красивый язык, что ради него часто жертвуют практичностью

Leonid
20.09.2017
15:18:16
вообще я могу сказать точно чего нет в хаскеле, и это большая проблема. нет крупной конторый платящей куче разрабов инфраструктуры.

Alexander
20.09.2017
15:18:24
в. другие считают что это проблема перевешивает я чем-то, что невозможно без этой проблемы

Google

Alexander
20.09.2017
15:18:27
г. ...
я вот из реальных аргументов увидел размер экосистемы
и даже могу с ним отчасти согласиттся
ещё я соглашусь с отсутствием тулзов

Anatolii
20.09.2017
15:19:31

Alexander
20.09.2017
15:19:34
хочу поддержу drawf и возможность использования frame graph и gdb
и нормальный рефакторер и плагины к редактору

Dmitry
20.09.2017
15:19:58
Alexander: я привел больше аргументов. Если ты их не видишь, то а) не хочешь видеть; б) не считаешь аргументами

Alexander
20.09.2017
15:20:11
я вроде явно про б. писал

Dmitry
20.09.2017
15:20:17
Анатолий: я говорил про рефакторинг
отсутствие тулзов — это, видимо, и есть причина сложности ручной правки хаскель-кода

Anatolii
20.09.2017
15:20:48
мы про разное говорим

kir
20.09.2017
15:20:56
Невидимые аргументы, а? Кто-то уже не помещается в тред, по-моему.

Leonid
20.09.2017
15:21:01

Alexander
20.09.2017
15:21:37
нету вещей типа переименовать функцию везде и прочего тривиального рефакторинга
в итоге вперёд емакса и вим
но при этом нетривиальный рефакторинг это проще
нетривиальный = не сводящийся к простому обновлению аст

Vasiliy
20.09.2017
15:22:43
подскажите, вот есть у меня некоторая функция f :: forall t. A t -> M t, есть type family Map (f :: a -> b) (as :: [a]) :: [b], теперь я пытаюсь изобразить forall (ts :: [*]). HList (Map A ts) -> HList (Map M ts)

Yuriy
20.09.2017
15:23:56

Google

Dmitry
20.09.2017
15:24:20
Vasily: о, как раз отлчный пример хорошо читабельно хаскель-кода ?

Vasiliy
20.09.2017
15:24:34
изначально он ругается на то, что ts у входа и ts у выхода разный, окэй, зафиксировал его, передав Proxy ts
но дальше ему, видимо, нужно что-то, что подскажет форму этого ts
для этого и нужны синглтоны что ли?

Leonid
20.09.2017
15:25:50
-XPolyKinds?

Vasiliy
20.09.2017
15:26:04
есть такое
сейчас выкину лишнее и покажу код

Leonid
20.09.2017
15:27:26
Dmitry если ТК осилил, то такой код читать не сложно

Alexander
20.09.2017
15:27:30
я до дома дойду через минуту посмотрю

Leonid
20.09.2017
15:27:38
Вообще без ТК хаскель в продакшен тянуть не стоит

Alexander
20.09.2017
15:27:43
о кстати

Dmitry
20.09.2017
15:27:45
теоркат, чтоли?

Leonid
20.09.2017
15:27:50
да

Alexander
20.09.2017
15:28:11
у нас есть проект большой на 60к кода

Dmitry
20.09.2017
15:28:13
я бы не сказал, что это хороший аргумент в пользу читабелности хаскель-кода

Alexander
20.09.2017
15:28:26
который достался людям без опыта haskell

Dmitry
20.09.2017
15:28:26
потому что ради каких-то мелочей нужно поднимать нехилый раздел математики

Alexander
20.09.2017
15:28:35
они нормально его читают

Dmitry
20.09.2017
15:29:18
Александр: ну и что? что это доказывает, кроме того, что ваши программисты смогли прочитать вот этот вот проект?
я говорю о том, что когнитивная нагрузка на мозг хаскель-программиста повыше, чем жависта того же

Google

Vasiliy
20.09.2017
15:30:24
чтобы читать код на жаве, нужно не меньше упороться по ооп

Leonid
20.09.2017
15:30:26
ну так у нас и мозг покрепче

kir
20.09.2017
15:30:32
... что способствует фильтрации по интеллекту

Dmitry
20.09.2017
15:30:39
Вообще я хочу сказать, что подписываться быть адвокатом какого то ЯП совершенно бессмысленно

Dmitry
20.09.2017
15:30:55
Vasiliy: ооп того две странички, сравнил с теоркатом, да!

Vasiliy
20.09.2017
15:31:15
две странички - это у кэя?

kir
20.09.2017
15:31:25
И троллить в тредах без какой-то конструктивной цели - тоже.

Leonid
20.09.2017
15:31:26
Dmitry объясни мне AbstractSignletonProxyFactoryFactory паттерн

Dmitry
20.09.2017
15:31:29
У Корделли

Dmitry
20.09.2017
15:31:33
ну а сколько там надо, чтоб основные принципы объяснить?

Vasiliy
20.09.2017
15:31:33
ТК тогда в три строки укладывается

Dmitry
20.09.2017
15:31:37
не, погодь, не корделли
мне не надо читать талмуд Корделли, чтобы нормально писать на яве
а вот Леонид сказал, что я должен теоркат выучить, чтоб нормально писать на х-е

Dmitry
20.09.2017
15:32:21
Мне вообще не надо ничего читать, что бы писать на х-ле
Хотя книга Марлоу хороша

Alexander
20.09.2017
15:32:48

Dmitry
20.09.2017
15:32:54
Леонид стебетсч

kir
20.09.2017
15:32:55
Dmitry , чего вы хотите добиться-то?
@voidlizard , что за книга?

Leonid
20.09.2017
15:33:14
без книги Марлоу импорт Control.Concurrent должен удалять сорцы

Google

Dmitry
20.09.2017
15:33:19
Параллельное и конкурентное программирование

Dmitry
20.09.2017
15:33:20
Александр, я не сказал, что х-ль код нельзя прочитать. Я сказал, что аналогичный код на яве читается просто легче

Vasiliy
20.09.2017
15:33:32
смари, есть объекты, есть стрелки, из любого объекта A есть стрелка, которая возвращается в него же, а если есть стрелка f между объектами A и B и есть стрелка g между B и C, то есть и стрелка (g.f) между A и C

Alexander
20.09.2017
15:33:37
опыт.. опыт.. опыт

Leonid
20.09.2017
15:33:41
Аналогичного кода на яве просто быть не может

Dmitry
20.09.2017
15:33:46
kir - добиваю скуку

Alexander
20.09.2017
15:33:51
это не минус чего-то
если взять человека с улицы среднего
то наверное код на java он прочитает немного быстрее
до какой-то ширины проекта

kir
20.09.2017
15:34:30
Да он устанет его читать

Dmitry
20.09.2017
15:34:47
если взять двух программистов примерно равной подготовки, то жавист будет более продуктивен просто в силу меньшего объема необходимых знаний

Vasiliy
20.09.2017
15:34:51
https://pastebin.com/EhXR9Scd

Dmitry
20.09.2017
15:34:58
php-шник будет писать код ещё быстрее, кстати

Vasiliy
20.09.2017
15:35:12
быстрее всех будет писать перловик

Misha
20.09.2017
15:35:28

Vasiliy
20.09.2017
15:35:32
он может просто головой об клавиатуру удариться, что-то да получится

kir
20.09.2017
15:35:34
Быстрее всех будет писать программист на J

Dmitry
20.09.2017
15:36:13
Быстрее всех код писать будет генератор кода

Leonid
20.09.2017
15:36:26
Vasiliy а аннотация для Proxy в (fs Proxy xs) не нужна?

kir
20.09.2017
15:36:28
Programming on J by facerolling on special symbol section on your keyboard.

Alexander
20.09.2017
15:36:53
Vasiliy тут лучше подход как в vynil но давай попробую сделать так